Перемещение значений из строк в столбцы в SQL Server 2008

#sql #sql-server-2008

#sql #sql-server-2008

Вопрос:

Я пытаюсь сохранить значения, сохраненные таким образом, в столбцах в sql Server, как показано ниже:

 Mon| Tue| Wed| Thu| Fri| Sat| Sun
30 |  20| 30 | 10 | 30 | 15 | 25
  

к чему-то вроде этого:

 Mon|30 
Tue|20 
Wed|30
Thu|10
Fri|30
Sat|15
Sun|25
  

Пример кода будет оценен по достоинству. Заранее спасибо.

Ответ №1:

Предположим, что ваша таблица равна t1: t1 (пн, вт, ср, чт, пт, сб, вс)

Вот ваш ответ:

 select 'Mon' as day, mon as number from t1
union all
select 'Tue', tue from t1
union all
select 'Wed', wed from t1
union all
select 'Thu', thu from t1
union all
select 'Fri', fri from t1
union all
select 'Sat', sat from t1
union all
select 'Sun', sun from t1
  

Тогда в вашем результирующем наборе у вас будет два поля: «день» и «число», как указано в ответе.