婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MySQL按小時查詢數據,沒有的補0

MySQL按小時查詢數據,沒有的補0

熱門標簽:天智外呼系統 北京人工外呼系統價錢 400電話鄭州申請 常州電銷外呼系統一般多少錢 地圖標注被騙三百怎么辦 云南語音外呼系統平臺 沃克斯電梯外呼線路圖 福州呼叫中心外呼系統哪家好 房產智能外呼系統品牌

需求背景

一個統計接口,前端需要返回兩個數組,一個是0-23的小時計數,一個是各小時對應的統計數。

思路 直接使用group by查詢要統計的表,當某個小時統計數為0時,會沒有該小時分組。思考了一下,需要建立輔助表,只有一列小時,再插入0-23共24個小時

CREATE TABLE hours_list (
 hour int NOT NULL PRIMARY KEY
)

先查小時表,再做連接需要查的表,即可將沒有統計數的小時填充上0。這里由于需要查多個表中,create_time在每個小時區間內、且SOURCE_ID等于查詢條件的統計之和,所以UNION ALL了多張表

	SELECT
			 t.HOUR,
			 sum(t.HOUR_COUNT) hourCount
			FROM
    (SELECT
     hs. HOUR AS HOUR,
     COUNT(cs.RECORD_ID) AS HOUR_COUNT
    FROM
     cbc_hours_list hs
    LEFT JOIN cbc_source_0002 cs ON HOUR (cs.create_time) = hs. HOUR
    AND cs.create_time > #{startTime}
    AND cs.create_time = #{endTime}
    #if sourceId?exists  sourceId !=''>
     AND SOURCE_ID = #{sourceId}
    /#if>
    GROUP BY
     hs. HOUR
    UNION ALL
    SELECT
     hs.HOUR AS HOUR,
     COUNT(cs.RECORD_ID) AS HOUR_COUNT
    FROM
     cbc_hours_list hs
    LEFT JOIN cbc_source_hs cs ON HOUR (cs.create_time) = hs. HOUR
    AND cs.create_time > #{startTime}
    AND cs.create_time = #{endTime}
    #if sourceId?exists  sourceId !=''>
     AND SOURCE_ID = #{sourceId}
    /#if>
    GROUP BY
     hs. HOUR
    UNION ALL
    SELECT
     hs.HOUR AS HOUR,
     COUNT(cs.RECORD_ID) AS HOUR_COUNT
    FROM
     cbc_hours_list hs
    LEFT JOIN cbc_source_kfyj cs ON HOUR (cs.create_time) = hs. HOUR
    AND cs.create_time > #{startTime}
    AND cs.create_time = #{endTime}
    #if sourceId?exists  sourceId !=''>
     AND SOURCE_ID = #{sourceId}
    /#if>
    GROUP BY
     hs. HOUR
    UNION ALL
    SELECT
     hs.HOUR AS HOUR,
     COUNT(cs.RECORD_ID) AS HOUR_COUNT
    FROM
     cbc_hours_list hs
    LEFT JOIN cbc_source_his_0002 cs ON HOUR (cs.create_time) = hs. HOUR
    AND cs.create_time > #{startTime}
    AND cs.create_time = #{endTime}
    #if sourceId?exists  sourceId !=''>
     AND SOURCE_ID = #{sourceId}
    /#if>
    GROUP BY
     hs. HOUR
    UNION ALL
    SELECT
     hs.HOUR AS HOUR,
     COUNT(cs.RECORD_ID) AS HOUR_COUNT
    FROM
     cbc_hours_list hs
    LEFT JOIN cbc_source_his_hs cs ON HOUR (cs.create_time) = hs. HOUR
    AND cs.create_time > #{startTime}
    AND cs.create_time = #{endTime}
    #if sourceId?exists  sourceId !=''>
     AND SOURCE_ID = #{sourceId}
    /#if>
    GROUP BY
     hs. HOUR
    UNION ALL
    SELECT
     hs.HOUR AS HOUR,
     COUNT(cs.RECORD_ID) AS HOUR_COUNT
    FROM
     cbc_hours_list hs
    LEFT JOIN cbc_source_his_kfyj cs ON HOUR (cs.create_time) = hs. HOUR
    AND cs.create_time > #{startTime}
    AND cs.create_time = #{endTime}
    #if sourceId?exists  sourceId !=''>
     AND SOURCE_ID = #{sourceId}
    /#if>
    GROUP BY
     hs. HOUR) t
   GROUP BY
    t.hour

效果

統計數為0的小時也可以查出來了。

到此這篇關于MySQL按小時查詢數據,沒有的補0的文章就介紹到這了,更多相關MySQL按小時查詢數據內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 詳解MySQL子查詢(嵌套查詢)、聯結表、組合查詢
  • 詳解MySQL的sql_mode查詢與設置
  • MySQL 子查詢和分組查詢
  • MySQL 分組查詢和聚合函數
  • Mysql 查詢JSON結果的相關函數匯總
  • MySQL 查詢的排序、分頁相關
  • MySql查詢時間段的方法
  • MySQL中基本的多表連接查詢教程
  • MySQL里面的子查詢實例
  • 詳解mysql 組合查詢

標簽:沈陽 黔東 鹽城 拉薩 沈陽 珠海 移動 徐州

巨人網絡通訊聲明:本文標題《MySQL按小時查詢數據,沒有的補0》,本文關鍵詞  MySQL,按,小時,查詢,數據,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL按小時查詢數據,沒有的補0》相關的同類信息!
  • 本頁收集關于MySQL按小時查詢數據,沒有的補0的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 白水县| 拉孜县| 古交市| 太湖县| 宁远县| 老河口市| 古丈县| 阿拉善右旗| 青浦区| 东源县| 盱眙县| 夏津县| 宁都县| 南丹县| 南康市| 湟源县| 敦煌市| 正安县| 长汀县| 湘潭县| 靖江市| 德兴市| 莱州市| 晋城| 赤水市| 克什克腾旗| 石棉县| 印江| 南昌市| 彩票| 和田市| 崇阳县| 资阳市| 嘉善县| 佛山市| 台南县| 新和县| 大同县| 龙游县| 耒阳市| 丹棱县|