普普通通的行列转化,为什么要这样写呢,脑子转不过来了
普通的行列转化,为什么要这样写呢,脑子转不过来了啊表:看着都是这么写的:max不是求最大值的么?和case when
普通的行列转化,为什么要这样写呢,脑子转不过来了啊

表:
看着都是这么写的:
max不是求最大值的么?和case when放在一起用为什么会这样的?不知道有没有详细一点的解释
[解决办法]这个查询不是有case when的条件么,没有MAX及GROUP BY查询后的数据类似
sid 01 02 03
01 80 0 0
01 0 90 0
01 0 0 99
这样子可以看明白不,就是把 01 02 03 这几个做成列即字段了,然后把对应的值写到里面,加MAX查询后会变为行数据。
[解决办法]http://blog.csdn.net/gongjian0628/article/details/7869375 看看这个 例子也许对你有帮助
[解决办法]你的写法没问题啊?你想问什么?数据的结果不是你想要的?min在你这个例子里面不行,如果把max单纯替换为min,那么出来的结果全是0.0。用max的时候,因为case when做了判断,如果不符合条件就硬性赋值0,而你那里有数据的都比0大,所以就取到那些数据。
[解决办法]针对lz的测试数据来说,max,sum得到的结果是一样的。