最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL按小時查詢數(shù)據(jù),沒有的補(bǔ)0

 更新時間:2020年12月18日 11:51:22   作者:Princar  
這篇文章主要介紹了MySQL按小時查詢數(shù)據(jù),沒有的補(bǔ)0,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

需求背景

一個統(tǒng)計(jì)接口,前端需要返回兩個數(shù)組,一個是0-23的小時計(jì)數(shù),一個是各小時對應(yīng)的統(tǒng)計(jì)數(shù)。

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

CREATE TABLE hours_list (
 hour int NOT NULL PRIMARY KEY
)

先查小時表,再做連接需要查的表,即可將沒有統(tǒng)計(jì)數(shù)的小時填充上0。這里由于需要查多個表中,create_time在每個小時區(qū)間內(nèi)、且SOURCE_ID等于查詢條件的統(tǒng)計(jì)之和,所以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

效果

統(tǒng)計(jì)數(shù)為0的小時也可以查出來了。

在這里插入圖片描述

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

相關(guān)文章

  • MySQL limit分頁大偏移量慢的原因及優(yōu)化方案

    MySQL limit分頁大偏移量慢的原因及優(yōu)化方案

    這篇文章主要介紹了MySQL limit分頁大偏移量慢的原因及優(yōu)化方案,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-11-11
  • DBeaver如何將mysql表結(jié)構(gòu)以表格形式導(dǎo)出

    DBeaver如何將mysql表結(jié)構(gòu)以表格形式導(dǎo)出

    DBeaver是一款多功能數(shù)據(jù)庫工具,支持包括MySQL在內(nèi)的多種數(shù)據(jù)庫,本文介紹如何使用DBeaver將MySQL的表結(jié)構(gòu)以表格形式導(dǎo)出,為數(shù)據(jù)庫管理和文檔整理提供便利,這種方法簡潔有效,適合需要文檔化數(shù)據(jù)庫結(jié)構(gòu)的開發(fā)者和數(shù)據(jù)庫管理員
    2024-10-10
  • MYSQL清空表和截斷表問題

    MYSQL清空表和截斷表問題

    這篇文章主要介紹了MYSQL清空表和截斷表問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 8種手動和自動備份MySQL數(shù)據(jù)庫的方法

    8種手動和自動備份MySQL數(shù)據(jù)庫的方法

    作為流行的開源數(shù)據(jù)庫管理系統(tǒng),MySQL的使用者眾多,為了維護(hù)數(shù)據(jù)安全性,數(shù)據(jù)備份是必不可少的。本文就為大家介紹幾種適用于企業(yè)的數(shù)據(jù)備份方法,需要的朋友可以參考下
    2018-10-10
  • mysql忘記root密碼的解決辦法(針對不同mysql版本)

    mysql忘記root密碼的解決辦法(針對不同mysql版本)

    這篇文章主要介紹了mysql忘記root密碼的解決辦法(針對不同mysql版本),文章通過代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-06-06
  • 詳解MySQL拼接函數(shù)CONCAT的使用心得

    詳解MySQL拼接函數(shù)CONCAT的使用心得

    這篇文章主要介紹了詳解MySQL拼接函數(shù)CONCAT的使用心得,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 數(shù)據(jù)庫中GROUP?BY語句詳解、示例、注意事項(xiàng)

    數(shù)據(jù)庫中GROUP?BY語句詳解、示例、注意事項(xiàng)

    在Oracle數(shù)據(jù)庫中GROUP?BY是用于對結(jié)果集進(jìn)行分組的一個關(guān)鍵字,這篇文章主要給大家介紹了關(guān)于數(shù)據(jù)庫中GROUP?BY語句詳解、示例、注意事項(xiàng)的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-06-06
  • MySQL如何查找樹形結(jié)構(gòu)中某個節(jié)點(diǎn)及其子節(jié)點(diǎn)

    MySQL如何查找樹形結(jié)構(gòu)中某個節(jié)點(diǎn)及其子節(jié)點(diǎn)

    這篇文章主要介紹了MySQL如何查找樹形結(jié)構(gòu)中某個節(jié)點(diǎn)及其子節(jié)點(diǎn)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • MySQL?bit類型增加索引后查詢結(jié)果不正確案例解析

    MySQL?bit類型增加索引后查詢結(jié)果不正確案例解析

    這篇文章主要介紹了MySQL?bit類型增加索引后查詢結(jié)果不正確案例淺析,我們先創(chuàng)建表student_attend,初始化一些數(shù)據(jù),這篇文章的測試環(huán)境為MySQL 8.0.35社區(qū)版,具體內(nèi)容介紹跟隨小編一起學(xué)習(xí)吧
    2024-06-06
  • MySQL多列IN查詢的實(shí)現(xiàn)

    MySQL多列IN查詢的實(shí)現(xiàn)

    多列 IN 查詢是一種強(qiáng)大的篩選工具,它允許通過多字段組合快速過濾數(shù)據(jù),本文主要介紹了MySQL 多列 IN 查詢的實(shí)現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2025-03-03

最新評論

龙川县| 会理县| 庆安县| 拉萨市| 嫩江县| 华阴市| 叙永县| 保德县| 即墨市| 通榆县| 遂平县| 龙陵县| 安西县| 合江县| 祁门县| 子洲县| 怀集县| 黄冈市| 天门市| 潮安县| 平遥县| 赣州市| 贡嘎县| 增城市| 张掖市| 江北区| 泰州市| 南城县| 娄底市| 碌曲县| 龙游县| 新宁县| 金塔县| 哈密市| 泰安市| 铜梁县| 嵩明县| 赤水市| 法库县| 安福县| 台山市|