Мне нужно выводить данные в виде набора результатов из хранимой процедуры, где столбцы исходных данных представляются в виде строк на выходе. Я должен увидеть строку для каждого столбца моего вывода, которая находится в моих исходных данных, и я должен увидеть столбец в моем выводе для каждой строки в исходных данных. Я просто не понимаю, как я могу это сделать, используя Pivot или другие методы, на которые я смотрел.SQL-перемещение столбцов в строки
Как только у меня есть данные, ориентированные так, как мне это нравится, я полагаю, что я буду запрашивать sys.columns, чтобы вставлять имена столбцов исходных данных в качестве первого столбца моего вывода. Мне также, вероятно, придется заранее запросить значения исходных данных, которые будут использоваться в качестве имен столбцов вывода. Я представляю себе какой-то великолепный динамический SQL в моем будущем, но при необходимости я могу сортировать все это самостоятельно. В основном я интересуюсь тем, как преобразовывать столбцы в строки. См. Ниже:
SELECT
ID
,XID
,Amount
FROM (
SELECT 11 as ID, 301 as XID, 50001 as Amount UNION ALL
SELECT 12 as ID, 302 as XID, 50002 as Amount UNION ALL
SELECT 13 as ID, 303 as XID, 50003 as Amount UNION ALL
SELECT 14 as ID, 304 as XID, 50004 as Amount
) T1
/*
The above query returns this:
ID XID Amount
----------------
11 301 50001
12 302 50002
13 303 50003
14 304 50004
Instead I would like to see this:
Column 11 12 13 14
-----------------------------------
ID 11 12 13 14
XID 301 302 303 304
Amount 50001 50002 50003 50004
*/
Отъезда PIVOT: https://technet.microsoft.com/en- us/library/ms177410 (v = sql.105) .aspx – Leonidas199x
Это нечто противоположное тому, что вы хотите, но это shou ld направьте вас в правильном направлении http://stackoverflow.com/questions/15931607/convert-rows-to-columns-using-pivot-in-sql-server –
Используя PIVOT, вы можете вызвать исходное значение для столбца ID представляют столбец для каждого идентификатора на выходе, но вы не можете заставить остальные исходные столбцы быть представлены в виде строк. Я не вижу, как делать то, что я хочу, с PIVOT. – RedRocketFire