Динамически разворачивать столбцы в строки в MariaDB и Amazon Redshift - PullRequest
0 голосов
/ 21 сентября 2019

У меня есть отчет о точечном пожаре, где источником данных являются MariaDB и Amazon Redshift.

Я хочу отключить данные, представляющие собой столбцы и строки.

Я знаю, что никакой функциональности делать нельзяэто в MariaDB и Redshift, как это возможно в Oracle и SQL SERVER.

Sample data 
SourcedocId labels priority 
123          valid normal
156        Invalid high 
267         Non case normal
156.        Valid    Normal

Output 
Sourcedocid field old new
123.        Labels null valid
123.        Priority null normal
156.        Labels  null invalid
156.        Priority null high
267.        Labels Null non case
267.        Priority Null normal
156.        Labels Invalid valid

Старое и новое значение будет рассчитываться с использованием значения запаздывания, которое я могу легко вычислить.

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

Использование union all До сих пор я пробовал:

Select field from
(Select 'labels' field from table1 
Union all 
Select 'priority' from table1 )r

Данные большие, поэтому использование union all нецелесообразно.

Есть ли другой подход, который я могу использовать?

Я использую Redshift 1.0 с PostgreSQL 8.0.

...