2015-06-17 2 views
0

У меня есть выбор, как этот.Oracle sql: преобразовать столбец в строку

select 'A','B','C' from dual; 

Это отображение

'A' 'B' 'C' 
A B C 

Я хочу, чтобы это показать, как этот

'A' 

A 

B 

C 

Пожалуйста, помогите мне.

+0

Вы посмотрели на это http://www.dba-oracle.com/t_converting_rows_columns.htm? –

+1

Возможный дубликат [Как преобразовать столбцы в строки в Oracle?] (Http://stackoverflow.com/questions/19858079/how-to-convert-columns-into-rows-in-oracle) –

+0

@AlexandruCimpanu 1> Это сайт не имеет хорошей репутации. Не все, что показывает в верхней части индексации Google, является хорошим. 2> Примеры, приведенные на этом сайте, будут путать любителей с ** набором строк ** и стандартным ** pivot/univot **. –

ответ

0

Просто соедините его с CHR(10) i.e. line feed.

Например,

SQL> WITH DATA(a, b, c) AS(
    2 SELECT 'A','B','C' FROM dual 
    3 ) 
    4 SELECT a||chr(10)||b||chr(10)||c text FROM DATA; 

TEXT 
----- 
A 
B 
C 


SQL> 

Или, вы можете использовать UNION ALL.

SQL> column text format a4 
SQL> WITH DATA(a, b, c) AS(
    2 SELECT 'A','B','C' FROM dual 
    3 ) 
    4 SELECT a text FROM DATA UNION ALL 
    5 SELECT b text FROM DATA UNION ALL 
    6 SELECT c text FROM DATA; 

TEXT 
---- 
A 
B 
C 

SQL> 
+0

Большое спасибо за вашу помощь. –

+0

@ KhmerMusic4U Пожалуйста, отметьте, что он ответил, поможет другим. Посмотрите на Tour Stack Overflow, чтобы понять, как работает этот сайт. Добро пожаловать в SO! –

Смежные вопросы