Home » SQL & PL/SQL » SQL & PL/SQL » ------ Concatenate 1 varchar COLUMN from 7 ROWS into a STRING ------
------ Concatenate 1 varchar COLUMN from 7 ROWS into a STRING ------ [message #8927] Fri, 03 October 2003 10:08 Go to next message
Tap
Messages: 2
Registered: October 2003
Junior Member
Hello everyone!

I am new to the forum and would like to ask for your help.

In ORACLE, I would like to concat a string column from 7 different rows together into a variable.

For example,

column1
~~~~~~~
aaa
bbb
ccc
ddd
eee
fff
ggg

I would like to have them together... like "aaa, bbb, " ...

The table has no primary key.

I know that I can use cursor for this, but is there any other way?

Thank you so much!

Tap
Re: ------ Concatenate 1 varchar COLUMN from 7 ROWS into a STRING ------ [message #8929 is a reply to message #8927] Fri, 03 October 2003 10:28 Go to previous messageGo to next message
Art Metzer
Messages: 2480
Registered: December 2002
Senior Member
SQL> CREATE TABLE t (x VARCHAR2(3));
  
Table created.
  
SQL> INSERT INTO t
  2  SELECT RPAD(ltr,3,ltr)
  3  FROM  (SELECT CHR(ROWNUM + 96) ltr 
  4         FROM   sys.all_users
  5         WHERE  ROWNUM <= 7)
  6  /
  
7 rows created.
  
SQL> SELECT x
  2  FROM   t
  3  /
  
X
---
aaa
bbb
ccc
ddd
eee
fff
ggg
  
7 rows selected.
  
SQL> SELECT  MAX(DECODE(ROWNUM,1,x))
  2  || ', ' || MAX(DECODE(ROWNUM,2,x))
  3  || ', ' || MAX(DECODE(ROWNUM,3,x))
  4  || ', ' || MAX(DECODE(ROWNUM,4,x))
  5  || ', ' || MAX(DECODE(ROWNUM,5,x))
  6  || ', ' || MAX(DECODE(ROWNUM,6,x))
  7  || ', ' || MAX(DECODE(ROWNUM,7,x)) combined
  8  FROM   t
  9  /
  
COMBINED
---------------------------------
aaa, bbb, ccc, ddd, eee, fff, ggg
  
SQL> 
HTH,

A.
Re: ------ Concatenate 1 varchar COLUMN from 7 ROWS into a STRING ------ [message #8933 is a reply to message #8929] Fri, 03 October 2003 12:00 Go to previous messageGo to next message
Tap
Messages: 2
Registered: October 2003
Junior Member
Thank you, Art!

I am not familiar with the DECODE function.

The table has only 7 rows now but more rows will be added in the future. How do you accommodate for an x number of rows?

Thank you, again!

Tap
Re: ------ Concatenate 1 varchar COLUMN from 7 ROWS into a STRING ------ [message #8934 is a reply to message #8933] Fri, 03 October 2003 12:41 Go to previous message
Art Metzer
Messages: 2480
Registered: December 2002
Senior Member
See this link.

Art.
Previous Topic: Tree of nodes
Next Topic: I want select the last days Column
Goto Forum:
  


Current Time: Tue Apr 16 12:22:41 CDT 2024