佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > mysql中count(), group by, order by使用詳解

mysql中count(), group by, order by使用詳解

熱門標簽:AI電銷 服務外包 地方門戶網(wǎng)站 百度競價排名 網(wǎng)站排名優(yōu)化 Linux服務器 呼叫中心市場需求 鐵路電話系統(tǒng)

最近做IM的時候遇到一個問題,同時用到了這三個關鍵字。就是查詢一個人的離線消息詳情,我們服務端返回給客戶端顯示的這個詳情包括了三個內容,第一個要求列出離線這段時間哪些人或者群給你發(fā)了消息,第二個這其中的某個人或者群發(fā)了多少條離線消息,第三個拿出最新的一條顯示出來。很明顯,group by分組哪些人或者群給你發(fā)了離線消息,count()得到離線消息數(shù)量,order by時間來排序拿出最新的消息。

select count(1) as cnt, msg_data from t_im_chat_offline_msg where to_company_id = ? and to_user_id = ? order by create_time desc group by from_company_id, from_user_id;

然后果不其然group by和order by一起檢索就報錯了,我們可以用嵌套子查詢。

select count(1) as cnt, msg_data from (select * from t_im_chat_offline_msg where to_company_id = ? and to_user_id = ? order by create_time desc) as temp_table group by from_company_id, from_user_id;

我們可以對已經(jīng)排序的結果集,再來分組并計算數(shù)量。這里還有一個暗坑,我自己不小心給躲過去了,其實count()會造成order by排序無效,舉個例子:

select count(1) as cnt, msg_data from t_im_chat_offline_msg where to_company_id = ? and to_user_id = ? order by create_time desc;

這個語句最后得到的一條記錄,其中的msg_data其實是根本沒有排序的結果,也就是數(shù)據(jù)庫原順序,應該是先插入的一條消息,就是說時間舊的消息。為了避免這個問題,所以嵌套子查詢在這里先排序,再讓它去count()就規(guī)避了。自己無意躲過去了,還好反復改語句測試了一番才發(fā)現(xiàn)。

您可能感興趣的文章:
  • MySQL中聚合函數(shù)count的使用和性能優(yōu)化技巧
  • mysql count詳解及函數(shù)實例代碼
  • 詳細解讀MySQL中COUNT函數(shù)的用法
  • 淺談MySQL 統(tǒng)計行數(shù)的 count
  • mysql count提高方法總結
  • MySQL中無過濾條件的count詳解
  • MySQL中count(*)、count(1)和count(col)的區(qū)別匯總
  • MySQL中distinct和count(*)的使用方法比較
  • MYSQL中統(tǒng)計查詢結果總行數(shù)的便捷方法省去count(*)
  • MySQL里的found_row()與row_count()的解釋及用法
  • 詳解 MySQL中count函數(shù)的正確使用方法

標簽:銅川 蘭州 黃山 仙桃 崇左 湘潭 衡水 湖南

巨人網(wǎng)絡通訊聲明:本文標題《mysql中count(), group by, order by使用詳解》,本文關鍵詞  ;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    大田县| 九江县| 江源县| 利辛县| 平顺县| 台北县| 班玛县| 柳江县| 年辖:市辖区| 桦川县| 北碚区| 宝鸡市| 涟水县| 大化| 周宁县| 板桥市| 阳春市| 雷山县| 扎囊县| 佛学| 郑州市| 沂水县| 崇阳县| 郧西县| 湘潭市| 沿河| 台东县| 泸定县| 彭泽县| 海门市| 延庆县| 高雄市| 石泉县| 长汀县| 久治县| 水城县| 昌图县| 九江市| 桃源县| 扶风县| 哈巴河县|