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

MySql下關(guān)于時(shí)間范圍的between查詢方式

 更新時(shí)間:2023年07月28日 10:36:48   作者:指尖過(guò)客  
這篇文章主要介紹了MySql下關(guān)于時(shí)間范圍的between查詢方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

MySql下時(shí)間范圍的between查詢

MySql下Between的范圍界限

mysql的between and 是包含左右界限的。

即time between startdate and enddate等價(jià)于time>=startdate and time<=enddate;

關(guān)于localdatetime

jdk1.8 提供的時(shí)間類使用起來(lái)很方便,特別是查詢上一個(gè)月,上一分鐘一類的。

其中有個(gè)方法是返回一天的開(kāi)始時(shí)間和結(jié)束時(shí)間:

LocalDateTime.of(lastDay, LocalTime.MAX)

它的最大值默認(rèn)是小數(shù)點(diǎn)后9個(gè)9,就是:2021-03-8T23:59:58.999999999,結(jié)合mysql+between and 就會(huì)把第二天0點(diǎn)的數(shù)據(jù)也查出來(lái),這顯然是不符合我們的需求的。

原因是精度超過(guò)5個(gè)9之后就會(huì)進(jìn)位。

所以在處理的時(shí)候,入?yún)⒖梢詼p1秒就正好。

MySql between日期邊界的問(wèn)題留意

邊界問(wèn)題 

mysql, between 開(kāi)始日期 AND 結(jié)束日期  包含開(kāi)始日期,不包含結(jié)束日期

例如:

BETWEEN '2018-01-22' AND? '2018-01-30'

開(kāi)始日期從2018-01-22 00:00:00.0 開(kāi)始, 到2018-01-29 23:59:59.59結(jié)束

表中的CREATE_DATE 是varchar(21) DEFAULT NULL COMMENT '時(shí)間',

CREATE_DATE中保存值是: 年-月-日  時(shí):分:秒:0     例如: 2018-01-29 23:45:35.0

SELECT *? FROM? Test? a WHERE? a.CREATE_DATE BETWEEN '2018-01-22' AND? '2018-01-30'? ?ORDER BY a.CREATE_DATE desc

SELECT * ?FROM TABEL a WHERE ?a.CREATE_DATE BETWEEN '2018-01-22' AND ?'2018-01-30' ??
ORDER BY a.CREATE_DATE desc

    2018-01-29 23:45:35.0    20180129
    2018-01-29 23:45:33.0    20180129

    2018-01-29 00:10:58.0    20180129
    2018-01-29 00:10:45.0    20180129
    2018-01-28 23:42:23.0    20180128
    2018-01-28 23:39:39.0    20180128

SELECT * ?FROM TABEL a WHERE ?a.CREATE_DATE BETWEEN '2018-01-22' AND ?'2018-01-29' ??
ORDER BY a.CREATE_DATE desc

    2018-01-28 23:42:23.0    20180128
    2018-01-28 23:39:39.0    20180128
    2018-01-28 00:13:22.0    20180128
    2018-01-28 00:13:19.0    20180128
    2018-01-27 23:23:02.0    20180127
    2018-01-22 00:09:59.0    20180122
    2018-01-22 00:09:56.0    20180122
    2018-01-22 00:01:53.0    20180122

遇到的其他問(wèn)題

遇到另外一張表  test2     有保存時(shí)間的字段:  `REPORTTIME` varchar(45) DEFAULT NULL,

這個(gè)字段保存的值是: 

例子1:

select *? from bips_hpd_helpdesk a WHERE? str_to_date(from_unixtime(a.REPORTTIME,'%Y-%m-%d'),'%Y-%m-%d')
?? ??? ?BETWEEN '2018-01-16' AND '2018-01-27' ORDER BY from_unixtime(a.REPORTTIME,'%Y-%m-%d') DESC ;

結(jié)果1:

從結(jié)果中,可以看到取到了27號(hào)的數(shù)據(jù),可能是處理的時(shí)間沒(méi)有 小時(shí),分鐘,秒。

例子2:

select *? from bips_hpd_helpdesk a WHERE? str_to_date(from_unixtime(a.REPORTTIME,'%Y-%m-%d'),'%Y-%m-%d')
BETWEEN str_to_date('2018-01-16','%Y-%m-%d') AND str_to_date('2018-01-27','%Y-%m-%d')

結(jié)果2:

找到問(wèn)題: 毫秒值轉(zhuǎn)換為時(shí)間,發(fā)現(xiàn)這里保存的毫秒值,沒(méi)有保存時(shí)分秒:

from_unixtime(a.REPORTTIME,'%Y-%m-%d') AS reportTime,a.REPORTTIME,  
             str_to_date(from_unixtime(a.REPORTTIME,'%Y-%m-%d'),'%Y-%m-%d %h:%i:%s') AS reportTime22
        FROM test  a WHERE  str_to_date(from_unixtime(a.REPORTTIME,'%Y-%m-%d'),'%Y-%m-%d %h:%i:%s')
        BETWEEN str_to_date('2018-01-16','%Y-%m-%d %h:%i:%s') AND str_to_date('2018-01-27 %h:%i:%s','%Y-%m-%d')
     #subdate(curdate(),date_format(curdate(),'%w')-1) AND subdate(curdate(),date_format(curdate(),'%w')-8)
        ORDER BY from_unixtime(a.REPORTTIME,'%Y-%m-%d') DESC ;

查看到的時(shí)間值:

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MySql 5.7.14 服務(wù)沒(méi)有報(bào)告任何錯(cuò)誤的解決方法(推薦)

    MySql 5.7.14 服務(wù)沒(méi)有報(bào)告任何錯(cuò)誤的解決方法(推薦)

    這篇文章主要介紹了MySql 5.7.14 服務(wù)沒(méi)有報(bào)告任何錯(cuò)誤解決方法的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-09-09
  • Mysql的游標(biāo)的定義使用及關(guān)閉深入分析

    Mysql的游標(biāo)的定義使用及關(guān)閉深入分析

    于游標(biāo)的用法Mysql現(xiàn)在提供的還很特別,雖然使用起來(lái)沒(méi)有PL/SQL那么順手,不過(guò)使用上大致上還是一樣,本文將詳細(xì)介紹一下,需要了解的朋友可以參考下
    2012-12-12
  • Mysql 如何查詢時(shí)間段交集

    Mysql 如何查詢時(shí)間段交集

    這篇文章主要介紹了Mysql 查詢時(shí)間段交集的方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Mysql分組排序取每組第一條的2種實(shí)現(xiàn)方式

    Mysql分組排序取每組第一條的2種實(shí)現(xiàn)方式

    開(kāi)發(fā)中經(jīng)常會(huì)遇到,分組查詢最新數(shù)據(jù)的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于Mysql分組排序取每組第一條的2種實(shí)現(xiàn)方式,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • MySQL?Workbench基本使用示例詳解

    MySQL?Workbench基本使用示例詳解

    MySQLWorkbench是一款由MySQL官方開(kāi)發(fā)的統(tǒng)一可視化工具,用于數(shù)據(jù)庫(kù)管理、數(shù)據(jù)建模和SQL開(kāi)發(fā),它支持Windows、Linux和macOS操作系統(tǒng),提供圖形界面簡(jiǎn)化復(fù)雜數(shù)據(jù)庫(kù)任務(wù),感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • 修改Mysql root密碼的方法

    修改Mysql root密碼的方法

    這篇文章主要介紹了修改Mysql root密碼的方法的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-11-11
  • mysql連接過(guò)多和死掉以及拒絕服務(wù)的解決方法

    mysql連接過(guò)多和死掉以及拒絕服務(wù)的解決方法

    mysql連接過(guò)多和死掉以及拒絕服務(wù)的解決方法...
    2007-12-12
  • mysql5.7.23版本安裝教程及配置方法

    mysql5.7.23版本安裝教程及配置方法

    這篇文章主要介紹了mysql5.7.23版本安裝教程及配置方法,需要的朋友可以參考下
    2018-11-11
  • 一文搞清楚MySQL count(*)、count(1)、count(col)區(qū)別

    一文搞清楚MySQL count(*)、count(1)、count(col)區(qū)別

    本文主要介紹了MySQL count(*)、count(1)、count(col)區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • MySQL查詢條件中in會(huì)用到索引嗎

    MySQL查詢條件中in會(huì)用到索引嗎

    這篇文章主要給大家介紹了MySQL查詢條件中in會(huì)不會(huì)用到索引的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07

最新評(píng)論

信宜市| 永城市| 当阳市| 迭部县| 建阳市| 盐津县| 浦县| 深圳市| 香河县| 沈阳市| 南城县| 巴林左旗| 西乌珠穆沁旗| 安化县| 金坛市| 都兰县| 永济市| 团风县| 龙海市| 桦川县| 武清区| 滨州市| 墨竹工卡县| 吕梁市| 秦安县| 广元市| 蓝山县| 措勤县| 宁城县| 鹤壁市| 芦山县| 崇信县| 库伦旗| 灵璧县| 宜兰县| 辽阳县| 怀集县| 遂宁市| 乐都县| 松溪县| 合肥市|