校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > PostgreSQL 實現(xiàn)distinct關鍵字給單獨的幾列去重

PostgreSQL 實現(xiàn)distinct關鍵字給單獨的幾列去重

熱門標簽:地圖標注和圖片名稱的區(qū)別 外呼調研系統(tǒng) 重慶自動外呼系統(tǒng)定制 打電話智能電銷機器人授權 合肥公司外呼系統(tǒng)運營商 美容工作室地圖標注 辦公外呼電話系統(tǒng) 海豐有多少商家沒有地圖標注 漯河外呼電話系統(tǒng)

PostgreSQL去重問題一直困擾著我,distinct和group by遠不如MySQL用起來隨便,但是如果掌握了規(guī)律,還是和MySQL差不多的

主要介紹的是distinct關鍵字

select distinct id,name,sex,age from student

假如有一張student表,字段如上圖,我查詢student表中所有信息用distinct去重(上面的SQL語句),pgsql就會根據(jù)所有的字段通過算法取得重復行的第一行,但是很明顯,ID這個字段我在設計的時候不會讓它重復,所以相當于沒有去重

我想只根據(jù)name和age去重怎么辦?

可以這么寫

select distinct on (name,age) id,name,sex,age from student

這樣就會只根據(jù)name和age去重了

總結一下:

distinct on (),括號里面的內容是要去重的列,括號外面的內容是你要查詢展示的列,兩者沒有關系,你可以根據(jù)某些列去重不必將他們查詢出來,最后這個舉一個例子就是:

我要查詢name和age,根據(jù)name和sex去重:

select distinct on (name,sex) name,age from student

補充:PostgreSQL按照某一字段去重,并顯示其他字段信息

以前遇到去重的地方更多的是MySQL去重后統(tǒng)計,比如select count(distinct 字段) from 表,后來臨時遇到用Postgresql查詢全部信息,但要對某個字段去重,查資料發(fā)現(xiàn)select * from table group by 要去重的字段,在MySQL上可以用,就搬到Postgresql試一下發(fā)現(xiàn)不行,又Google一番,終于找到一種方案:select distinct on(字段) * from 表,就可以了。

如下圖:

對name字段去重后再查詢全部字段:

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • postgresql rank() over, dense_rank(), row_number()用法區(qū)別
  • Postgresql去重函數(shù)distinct的用法說明
  • postgreSQL中的row_number() 與distinct用法說明

標簽:衡陽 珠海 蚌埠 來賓 株洲 烏海 晉城 錦州

巨人網(wǎng)絡通訊聲明:本文標題《PostgreSQL 實現(xiàn)distinct關鍵字給單獨的幾列去重》,本文關鍵詞  PostgreSQL,實現(xiàn),distinct,關鍵字,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PostgreSQL 實現(xiàn)distinct關鍵字給單獨的幾列去重》相關的同類信息!
  • 本頁收集關于PostgreSQL 實現(xiàn)distinct關鍵字給單獨的幾列去重的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 蓝山县| 怀来县| 天等县| 红桥区| 江西省| 武乡县| 汉阴县| 乐陵市| 泰来县| 丰台区| 卓尼县| 郯城县| 玛多县| 西和县| 灌云县| 衡东县| 义乌市| 东兰县| 贡山| 甘洛县| 方正县| 湄潭县| 景宁| 平昌县| 河津市| 亳州市| 长沙市| 扎兰屯市| 永定县| 潼关县| 泽普县| 社旗县| 吉木乃县| 鄂托克旗| 嘉定区| 绥芬河市| 大余县| 成都市| 沙湾县| 汽车| 汕头市|