Показать альтернативные столбцы из строки таблицы - PullRequest
0 голосов
/ 07 октября 2019

введите описание изображения здесь

Показать альтернативные столбцы из строки таблицы

Ответы [ 2 ]

0 голосов
/ 07 октября 2019

Кроме того, UNION ALL также может работать для вас, если вы согласились изменить тип данных столбца Зарплата -

SELECT ID, Name "Name & Salary"
FROM TABLE1
UNION ALL
SELECT ID, Salary
FROM TABLE1
ORDER BY ID, Name
0 голосов
/ 07 октября 2019

Преобразовать столбец salary в строковый тип данных (чтобы salary и name имели одинаковый тип данных), а затем UNPIVOT:

Установка Oracle :

CREATE TABLE test_data ( id, name, salary ) AS
 SELECT 100, 'A', 1000 FROM DUAL UNION ALL
 SELECT 101, 'B', 2000 FROM DUAL UNION ALL
 SELECT 102, 'C', 3000 FROM DUAL

Запрос :

SELECT id, value
FROM   (
  SELECT id, name, TO_CHAR( salary ) AS salary
  FROM   test_data
)
UNPIVOT ( value FOR key IN ( name, salary ) )

Выход :

 ID | VALUE
--: | :----
100 | A    
100 | 1000 
101 | B    
101 | 2000 
102 | C    
102 | 3000 

дБ <> скрипка здесь

...