Если вам нужно отобразить данные в такой форме, я бы сначала извлек данные - предположительно одну строку из нескольких столбцов из одной таблицы - из баз данных, а затем использовал используемый инструмент/язык для получения данных (C#, Java, любой) для форматирования данных, поскольку они должны отображаться на экране или на том, что нужно для его отображения. SQL предназначен для хранения и извлечения данных, а не для его форматирования для отображения на экране.
С учетом сказанного, если бы мне пришлось вернуться (скажем) значения из 5 отдельных столбцов из одной строки из одной таблицы, я бы взломать это что-то вроде этого:
SELECT Col1 as Data, 1 as MyOrder from MyTable where MyTableId = @DesiredRow
UNION ALL SELECT Col2, 2 from MyTable where MyTableId = @DesiredRow
UNION ALL SELECT Col3, 3from MyTable where MyTableId = @DesiredRow
UNION ALL SELECT Col4, 4 from MyTable where MyTableId = @DesiredRow
UNION ALL SELECT Col5, 5 from MyTable where MyTableId = @DesiredRow
order by MyOrder
(Должен ли что получает должным образом отформатированный ...) Вам нужно только псевдоним столбца в первом выборе. Хм, будут и другие соображения, такие как (1) тип данных столбца возвращенной будет тип данных, который сначала выбрать, так что вам, возможно, придется сделать много литья, таких как
...select cast(Col1 as varchar(100)) As Data...
(2) Он, вероятно, будет упорядочивать строки, возвращенные в том порядке, в котором они были выбраны, я бросил в этом порядке, чтобы быть уверенным. И, (3) Ваш пробег может варьироваться в зависимости от требований приложения, о которых я сейчас не знаю.
Удачи вам!
данные, которые будут использоваться в качестве столбцов вместо строки sinle – 2009-07-14 13:39:32
отображение через какие средства/в каком контексте? – jlarson