当前位置:Gxlcms > mysql > mysql复杂的查询语句,工作中用到的记录下_MySQL

mysql复杂的查询语句,工作中用到的记录下_MySQL

时间:2021-07-01 10:21:17 帮助过:17人阅读

1 去重查询

select distinct id from user_info where xxxxxx

2 group by 分组查询中排序

group by本身没有排序功能,这可能是mysql不完美的地方,但是我们可以这样做

select attack_id, time from (select * from attack_log where (time+172800) < unix_timestamp(now()) order by time desc) attack_log group by attack_id

*注:先通过排序行成一个集合,然后再去改集合中去查,这样分组就实现了排序查询

3 查找符合要求的 前两个数据

select attack_id,time from attack_log a where (select count(*) from attack_log where attack_id = a.attack_id and time > a.time) <2

*注:where 后面 其实是一个bool值。通过bool值来过滤 符合要求的数据

人气教程排行