mysqldistinct排序_SQL基础:Distinct和orderby关系。
(Dis。。。
今天本来是测试⼀段代码,然后⽤到Distinct关键字,查看执⾏计划之后,突然发现过程中有对表进⾏sort! 上⽹搜索和加之验证得出如下结果:
结论:
1.使⽤distinct 关键字后会对distinct后⾯⽤到的关键字进⾏默认的升序排序.
2.可以使⽤order by 来改变排序规则.
3.使⽤distinct后,出现在order by 中的字段必须要写在 SELECT 句中,⾮充要条件。
html中cellpadding
求问各⼤神:如何消除distinct⾃动排序,及为什么要进⾏排序,还有distinct是如何做到消除重复列的!
另:
//Wrong SQLSELECT DISTINCT field_1,field_2 FROM Table ORDER BYfield_0//ReasonORDER BY ⼦句与 (OrderIndex) DISTINCT冲突//Solve MethodSELECT field_1,field_2 FROM Table GROUP BY fie
eclipse教程csdnld_1,field_2 ORDER BY Min(field_0)
Group by 语句好像也要⾃动进⾏排序,求真相
测试数据如下:
1 CREATE TABLE Student (id int identity(0,1), name nvarchar(20) ,course nvarchar(20) , score int)
2 DROP TABLEStudent
3 insert into Student values
mysql语句顺序4 ('张三','语⽂',81),
5 ('张三','数学',75),
mybatis基础知识6 ('李四','语⽂',76),
7 ('李四','数学',90),
8 ('王五','语⽂',81),
9 ('王五','数学',100),10 ('王五','英
语',90)
执⾏  SQL : SELECT  distinct S.name ,S.score FROM Student S ;
查看执⾏计划结果如下:
可以看到在sort阶段,分别对name和score两个字段进⾏升序排序!
定义js数组
执⾏  SQL : SELECT  distinct S.name ,S.score FROM Student S ;
查看执⾏计划结果如下:
对score 和name 分别 降序和升序排序!
执⾏  SQL :SELECT  distinct S.name ,S.score FROM Student S order by S.score desc ,S.course;查看执⾏计划结果如下:
深入设计模式中文电子版解析成功,但执⾏错误!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。