MySQL-排序加去重sql语句
?
最近在重新復(fù)習(xí)mysql數(shù)據(jù)庫(kù)
?
下面是一張學(xué)生表?student?
需要將重復(fù)的姓名name字段進(jìn)行去重,然后學(xué)生的生日birthday 字段篩選出最早的時(shí)間進(jìn)行降序。
?
我用到的是?GROUP BY函數(shù)進(jìn)行分組去重,先將查出 birthday 字段進(jìn)行分組并且降序。
SELECT * from student GROUP BY birthday ORDER BY birthday DESC結(jié)果如下:排序需求已經(jīng)完成了,現(xiàn)在還需要名字去重,那就把上面的 sql語(yǔ)句復(fù)制一下繼續(xù)套用。
?
將復(fù)制的sql語(yǔ)句嵌套起來(lái)用,再將學(xué)生name 字段進(jìn)行?GROUP BY name函數(shù)進(jìn)行分組去重。
隨便起了個(gè)表的別名 a 就是student學(xué)生表
SELECT * from (SELECT * from student GROUP BY birthday ORDER BY birthday DESC) a GROUP BY a.name結(jié)果如下,生日日期較短的張三已經(jīng)去重消失了,剩下的張三的生日時(shí)間是比較新的。
?
?如果有小伙伴查詢sql的?GROUP BY函數(shù)的時(shí)候就會(huì)出現(xiàn)以下報(bào)錯(cuò)
?Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'xxx.xxxxxx.xxx' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
可以去下面這個(gè)鏈接解決。
https://blog.csdn.net/NatChan/article/details/108085652
?
總結(jié)
以上是生活随笔為你收集整理的MySQL-排序加去重sql语句的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: ykhmi是什么触摸屏软件_深圳市人机界
- 下一篇: 抛物型微分方程的数值解法——向前及向后欧