group by 的问题
经常会遇到这样的情况,
select 111,222,333,666 from 555 group by 666是会出错的,于是经常会发现大家改为这个形式加上了聚合
select min(111),min(222),min(333).666 from 555 group by 666
可是未必所有的min都在同一条记录中吧,这样到底显示的是哪条记录啊,不知道小弟说的明白不?
------解决方案--------------------所有记录中符合条件的那个值
------解决方案--------------------不用聚合的列必须包含在 group by 里
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)
最新版本:20070212
http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
------解决方案--------------------select min(111),min(222),min(333).666 from 555 group by 666
其实你这条group by 只是为列中的数据分组显示~然后显示同组中111,222,333列中最小的数据~~~并不是固定的一行数据!!!
------解决方案--------------------不能确定
------解决方案--------------------“可是未必所有的min都在同一条记录中吧,”说的对
所以使用时要看情况 ~