关于数据库列转行的问题。
兰色与白色 2014-02-12 04:03:54 SQL SERVER 2005以后列转行有个函数可以直接用。
2000的数据库我当初做的时候用的是
select 日期,
max(case id when '列头A' then 值 end ) as 列头A,
max(case id when '列头B' then 值 end ) as 列头B,
max(case id when '列头C' then 值 end ) as 列头C,
max(case id when '列头D' then 值 end ) as 列头D
FROM (SELECT 日期,列头(包含ABCD),值 from table ) t1 group by thisd
SELECT 日期,列头(包含ABCD),值 from table
的查询结果是这样的
日期 列头 值
20140101 A 100
20140101 B 100
20140101 C 100
20140102 A 100
20140102 B 100
20140102 C 100
20140103 A 100
20140103 B 100
20140103 C 100
我想知道这里的MAX到底是什么用处啊。。
除了因为配合GROUP BY 要用聚合包起来。
那换成MIN之类的不是一样效果么?