SQL: реальное транспонирование
Я знаю о опоре и развороте. Это не то, что я хочу. Сводные и сводные сводные данные, но это не то, что я хочу.
Думайте о таблице как о матрице (линейной алгебре). Если я начну с матрицы m x n, я хочу преобразовать эту матрицу (таблицу) в матрицу n x m. Я хочу истинногоТРАНСПОНИРОВАНИЕ.
Как я могу сделать это в SQL?
Например, если у меня есть:
1 2 3
1 2 4
6 7 8
3 2 1
3 9 1
тогда результат должен быть:
1 1 6 3 3
2 2 7 2 9
3 4 8 1 1
Обратите внимание, что количество строк становится числом столбцов, и наоборот. Также обратите внимание, что я не сгруппировал или агрегировал какие-либо данные. Каждое отдельное значение, присутствующее в источнике, присутствует в результате, и их координаты x-y были поменяны местами.