Sql 转置表并按列转储
我有下表:Sql 转置表并按列转储,sql,sql-server,pivot,pivot-table,transpose,Sql,Sql Server,Pivot,Pivot Table,Transpose,我有下表: id code bool1 bool2 bool3 bool4 1 A true true false true 2 B false true true true 有可能得到这样的东西吗 id code bool 1 A name_for_bool1 // name of column bool1 e.g. 'worker' 1 A name_for_bool2 1 A name_for_bool4 2 A name_for
id code bool1 bool2 bool3 bool4
1 A true true false true
2 B false true true true
有可能得到这样的东西吗
id code bool
1 A name_for_bool1 // name of column bool1 e.g. 'worker'
1 A name_for_bool2
1 A name_for_bool4
2 A name_for_bool2
2 A name_for_bool3
2 A name_for_bool4
我想告诉你我试过什么,但完全错了,我不知道怎么做 检查这个
这个怎么样:
SELECT id, code, 'name_for_bool1' bool FROM src WHERE bool1
UNION ALL
SELECT id, code, 'name_for_bool2' bool FROM src WHERE bool2
UNION ALL
SELECT id, code, 'name_for_bool3' bool FROM src WHERE bool3
UNION ALL
SELECT id, code, 'name_for_bool4' bool FROM src WHERE bool4
从bool1 union all etcIf表中选择id,code,'worker',如果您使用的是SQL Server 2008或更高版本,您可以使用。非常感谢,这正是我要找的!
SELECT id, code, 'name_for_bool1' bool FROM src WHERE bool1
UNION ALL
SELECT id, code, 'name_for_bool2' bool FROM src WHERE bool2
UNION ALL
SELECT id, code, 'name_for_bool3' bool FROM src WHERE bool3
UNION ALL
SELECT id, code, 'name_for_bool4' bool FROM src WHERE bool4