Sql代码
复制代码 代码如下:
CREATE TABLE test(a VARCHAR2( 20),b VARCHAR2 (20),c NUMBER,d VARCHAR2 (20))
INSERT INTO test VALUES( 'a1','b1' ,1, 't');
INSERT INTO test VALUES( 'a3','b3' ,3, 't');
INSERT INTO test VALUES( 'a4','b4' ,4, 't');
INSERT INTO test VALUES( 'a2','b2' ,2, 't');
INSERT INTO test VALUES( 'xx','xx' ,5, 'x');
INSERT INTO test VALUES( 'a1','b1' ,1, 't');
INSERT INTO test VALUES( 'a3','b3' ,3, 't');
INSERT INTO test VALUES( 'a4','b4' ,4, 't');
INSERT INTO test VALUES( 'a2','b2' ,2, 't');
INSERT INTO test VALUES( 'xx','xx' ,5, 'x');
COMMIT;
1.SELECT a,b, SUM(c) FROM test WHERE d= 't' GROUP BY a,b ORDER BY a,b;
2.SELECT a,b, SUM(c) FROM test WHERE d= 't' GROUP BY b,a ORDER BY a,b;
总结:对于1,2而言,结果应该是一样的,但是分组的顺序不同,SQL的性能应该也是不同的。
您可能感兴趣的文章:- mysql分组取每组前几条记录(排名) 附group by与order by的研究
- mysql筛选GROUP BY多个字段组合时的用法分享
- 使用GROUP BY的时候如何统计记录条数 COUNT(*) DISTINCT
- SQLServer中汇总功能的使用GROUPING,ROLLUP和CUBE
- mysql "group by"与"order by"的研究--分类中最新的内容
- SQL中Group分组获取Top N方法实现可首选row_number