国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

mysql - 關于sql語句中的with從句和group by分組

瀏覽:129日期:2022-06-14 14:35:34

問題描述

初涉SQL,對于其中with和group by從句搭配sum,max方法的使用邏輯有一些疑問

例如,數據庫中有以下幾個table

Customer (cusid, cusname, cusphone, cuscity); Driver (did, dname, dphone, dcity); CarOwnership (did, carid); Car (carid, carbrand, carsize); Trips (cusid, carid, did, getontime, getofftime, price, distance);

要output出 carbrand。這個carbrand是最多distinct customer使用過的,即求每一種carbrand的distinct cusid數量sum,再求max這個數量的carbrand,應該如何使用sql語句實現呢?

問題解答

回答1:

題主是想選出“乘客最喜愛的車型”。以下Postgresql代碼未測試:

select carbrand, count(*) as customersfrom ( select distinct carbrand, cusid from Trips inner join Car using (carid)) as brand_cusidgroup by carbrandorder by customers desclimit 10

brand_cusid是車型-乘客的關系表,已做distinct處理。

然后按carbrand分組并按行數從大到小排序,并顯示前10個車型。

注意這些車型有可能是并列第一的。這時可增加limit數量。

相關文章:
主站蜘蛛池模板: 周口市| 赤水市| 麻江县| 秭归县| 南乐县| 黎城县| 揭阳市| 缙云县| 安阳县| 信宜市| 从化市| 加查县| 饶河县| 玛多县| 孟村| 乌兰县| 高碑店市| 泰和县| 阜平县| 娱乐| 宜宾县| 呈贡县| 榆社县| 高安市| 福安市| 响水县| 达尔| 海原县| 连江县| 永嘉县| 龙岩市| 淮安市| 宣威市| 浏阳市| 蓝田县| 泊头市| 宝坻区| 台中县| 昌都县| 乐都县| 霍州市|