mysql联合distinct_mysql学习之八mysql的排序order by 语句,limit语句返回记录数限制,distinct去掉重复记录语句,union联合查询语句。...

一、order by  语句排序

order by是按照字段值进行排序的,排序分为升序和降序即:asc和desc是由校对规则决定排序关系的。

5045f39db9cba6f20681149a3b55e3f6.png

也就是说order by 先根据第一个字段排序,然后在第一个字段排序的基础之上再根据第二个字段排序。以此类推。

select * from tbl_name order by 字段1 desc|dsc ,字段2 desc|dsc, 字段3....;

e4160fa3ffb1ec81672b89102901654b.png

二、limit 语句

limit语句用来返回限制的行数,比如:查询第3到第5行的记录。

b823c8827a800530878d30dde9ef0750.png

这是分页操作的重要应用。

select * from tbl_name limit offset(开始索引),row_count(行数量);

注意:mysql的索引是从0开始的。第一句话的意思就是:从第3个索引开始,查找5条记录。

三、distinct语句:去掉重复记录

重复记录是指字段值都相同的记录,不是部分字段值相同。

例如查询某个字段并去除重复字段

select distinct 字段值 from tbl_name;

select distinct 字段值1,字段值2,..... from tbl_name;

相对的是all 语句,默认就是all 语句。

四、Union联合操作

将多条select语句的结果合并到一起。称之为联合操作。例如:

select 字段1,字段2,....from tbl_name where 字段n='xxxx' order by desc| dsc limit n;

上面一句用了where,order by,limit三个关键字。一定要一句一句理解。联合查询就是用union关键字将两个查询语句连接起来。不过每个语句用括弧括起来了。

fe353dae3aae64d61217f41248ec6427.png

注意:union结果会自动将重复的记录删除掉,相当于默认执行了distinct关键字。那么如何不让它删除重复记录呢,就要在union后面加上all 关键字

69de4d68cd156b6efdd4c24308eb82f4.png

注意:在子语句的排序中,有两点需要注意,

b24e189b8ce6884322e16f369fafd1e3.png

注意:子语句的括弧不是必须的,没有括弧也可以,不过开发人员可读性差。

3、对所有结果进行统一性排序

只需要在最后一个select语句后,增加相应的排序规则即可。

903cfd961b7a385fb7c666c6157d530f.png

7ea9da37301e8d81f07aec9391231490.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值