Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: SQL Query

RE: SQL Query

From: Aponte, Tony <AponteT_at_hsn.net>
Date: Tue, 23 Jul 2002 06:38:23 -0800
Message-ID: <F001.0049F578.20020723063823@fatcity.com>


I hope this is not to late for you. Anyway, this questions comes up often. Below is the solution to pivot rows for up to 12 values of field1. Just adjust to fit your range of values.

HTH
Tony Aponte
Home Shopping Network, Inc.

create table tab1 (field1 number,field2 varchar2(30));

insert into tab1 values( 1,'RAM');
insert into tab1 values( 1,'SHAM');
insert into tab1 values( 1,'PAT');
insert into tab1 values( 2,'MAN');
insert into tab1 values( 2,'JOHN');

commit;

SELECT
g1

,MAX(DECODE(line_no,01,value,NULL)) || 
MAX(DECODE(line_no,02,value,NULL)) || 
MAX(DECODE(line_no,03,value,NULL)) || 
MAX(DECODE(line_no,04,value,NULL)) || 
MAX(DECODE(line_no,05,value,NULL)) || 
MAX(DECODE(line_no,06,value,NULL)) || 
MAX(DECODE(line_no,07,value,NULL)) || 
MAX(DECODE(line_no,08,value,NULL)) || 
MAX(DECODE(line_no,09,value,NULL)) || 
MAX(DECODE(line_no,10,value,NULL)) || 
MAX(DECODE(line_no,11,value,NULL)) || 
MAX(DECODE(line_no,12,value,NULL)) 
FROM (SELECT g1,value,row_number() over(partition by g1 order by g1 nulls last) line_no 
FROM (SELECT field1 g1,field2 value from tab1) )
GROUP BY g1;
G1	MAX(DECODE(LINE_NO,01,VALUE,NU
1	RAMSHAMPAT
2	MANJOHN

-----Original Message-----
[mailto:RShankar1_at_CHN.COGNIZANT.COM]
Sent: Thursday, July 18, 2002 4:35 PM
To: Multiple recipients of list ORACLE-L

Hi Friends,

        I just need a help in a sql . I am having rows in a table as follows

Field1(ID) Field2(NAME)


1		  RAM
1		  SHAM
1		  PAT
2		  MAN
2		  JOHN

Now i want the output to be as follows

FIELD1 FIELD2


1		RAMSHAMPAT
2		MANJOHN

In the output i have to show all the names for the same id in a single row. Please help me in getting this output using a SQL query and not through cursors.

Thanks in advance.

Regards,
Shankar

--

Please see the official ORACLE-L FAQ: http://www.orafaq.com
--

Author: Aponte, Tony
  INET: AponteT_at_hsn.net

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). Received on Tue Jul 23 2002 - 09:38:23 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US