亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

做一個統計數據的接口有多個select count,MySQL 怎么寫才能算是高效的接口

做一個統計數據的接口有多個select count,MySQL 怎么寫才能算是高效的接口

一只斗牛犬 2019-03-10 14:47:22
如題,如果做一個統計數據的SQL查詢,查詢的表來自四面八方,又有不同的條件限制,如果在一條SQL語句中,高效實現多個select count,這里只對SQL做考慮,比方舉個例子,sql如下(這里數據超級少)像這種SQL,語句,該如何優化,或者說是簡化SQL,這是部分sql,從例子中看的出來,還有好幾個類別,平常寫的大多是業務,技術型代碼一直尚未研究,請各位大佬提點意見注:count(X)中的 X 均為該表自增長主鍵ID, MySQL版本為8.0
查看完整描述

2 回答

?
慕的地10843

TA貢獻1785條經驗 獲得超8個贊

如果是同一個表的話可以考慮用group by,不同表的話沒什么好辦法呢
PS:MYSQL中 count(*)的效率要比count(字段)高哦

查看完整回答
反對 回復 2019-03-10
?
尚方寶劍之說

TA貢獻1788條經驗 獲得超4個贊

如果沒性能問題,你那沒啥問題,當然上緩存就是了,
還有用explain 分析下 
你這子查詢也可以拆分2條sql
`
select count(*),type as cnt fromo article where openID in =43 group by type

select count(*) from diary where openId=43 and type='public' 
`

然后再業務中 拼接返回的數組.


查看完整回答
反對 回復 2019-03-10
  • 2 回答
  • 0 關注
  • 762 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號