SQL group by去重復(fù)且按照其他字段排序的操作
需求:
合并某一個字段的相同項,并且要按照另一個時間字段排序。
例子:

一開始用
select city from table group by city order by date desc
會報錯因為date沒有包含在聚合函數(shù)或 GROUP BY 子句中
然后用將date放入group by中:
select city from table group by city,date order by date desc
得到結(jié)果

但是得到的結(jié)果還是有重復(fù)的,沒有解決
如果不按照時間排序,就會影響我之后的操作,所以百度了很久,終于找到了解決方法:
正確寫法:
select city from table group by city order by max(date) desc
發(fā)現(xiàn)很神奇的結(jié)果出來了

然后又找了一些資料,發(fā)現(xiàn)max()神奇的地方:
select city,max(date) as d1 from table group by city,d1 order by d1 desc

這里寫在前面還能看到時間排序
如果還有更好的方法大家一起交流。
補充:MYSQL中去重,DISTINCT和GROUP BY的區(qū)別
例如有如下表user:

distinct會過濾掉它后面每個字段都重復(fù)的記錄
用distinct來返回不重復(fù)的用戶名:select distinct name from user;,結(jié)果為:

用distinct來返回不重復(fù)的name和id:select distinct name,id from user;,結(jié)果為:

distinct name,id 這樣的寫法,mysql 會認為要過濾掉name和id兩個字段都重復(fù)的記錄。
如果sql這樣寫:
select id,distinct name from user
這樣mysql會報錯,因為distinct必須放在要查詢字段的開頭。
group by則可以在要查詢的多個字段中,針對其中一個字段去重 :
select id,name from user group by name;
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
openEuler?RPM方式安裝MySQL8的實現(xiàn)
本文主要介紹了openEuler?RPM方式安裝MySQL8的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-01-01
MySQL數(shù)據(jù)庫下用戶及用戶權(quán)限配置
這篇文章主要介紹了MySQL數(shù)據(jù)庫下用戶及用戶權(quán)限配置的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-08-08
Mysql數(shù)據(jù)庫報錯2003?Can't?connect?to?MySQL?server?on?
最近在用mysql,打開mysql的圖形化界面要連接時出現(xiàn)2003錯誤,所以下面這篇文章主要給大家介紹了關(guān)于Mysql數(shù)據(jù)庫報錯2003?Can't?connect?to?MySQL?server?on?'localhost'?(10061)的解決方式,需要的朋友可以參考下2022-09-09
Mysql根據(jù)某層部門ID查詢所有下級多層子部門的示例
這篇文章主要介紹了Mysql根據(jù)某層部門ID查詢所有下級多層子部門的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12
dubbo中zookeeper請求超時問題:mybatis+spring連接mysql8.0.15的配置
這篇文章主要介紹了dubbo中zookeeper請求超時問題:mybatis+spring連接mysql8.0.15的配置,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2020-01-01
Mysql select in 按id排序?qū)崿F(xiàn)方法
有時候我們在后臺選擇了一系列的id,我們想安裝填寫id的順序進行排序,那么就需要下面的order by方法,測試通過2013-03-03
簡單講解MySQL的數(shù)據(jù)庫復(fù)制方法
這篇文章主要介紹了簡單講解MySQL的數(shù)據(jù)庫復(fù)制方法,利用到了常見的mysqldump工具,需要的朋友可以參考下2015-11-11

