国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

mysql 時間類型 字段(精確到時分秒) 怎么比較?

瀏覽:143日期:2022-06-11 15:54:40

問題描述

我需要根據(jù)create_time字段來篩選數(shù)據(jù),現(xiàn)在sql 語句如下:

SELECT * FROM `sbhf_alarm` sa WHEREunix_timestamp(sa.create_time) BETWEEN unix_timestamp(’2016-05-25 14:07:56’)AND unix_timestamp(’2017-05-25 14:07:56’)

mysql  時間類型 字段(精確到時分秒) 怎么比較?

但是,我發(fā)現(xiàn)這種方法由個bug, 就是,當上限時間(上圖箭頭)過大的時候,會報錯。如下圖:

mysql  時間類型 字段(精確到時分秒) 怎么比較?原因是,unix_timestamp函數(shù),將時間轉(zhuǎn)化為秒,時間不能太大。

問題:是否還有其他什么更好的方法來篩選時間? 這種問題一般是怎么解決的?請大神賜教,感激不盡……

問題解答

回答1:

UNIX_TIMESTAMP返回的是INTEGER而不是BIGINT,所以不能超過2038年(又一說2106年)。

為什么不試試 create_time BETWEEN ’2016-05-25 14:07:56 AND ’2017-05-25 14:07:56’ 呢?

另外,如果追求計算的便捷性,建議時間列類型設為BIGINT,存放以毫秒為單位的Unix時間戳,這樣就不會有2038問題了。

回答2:

create_time BETWEEN ’2016-05-25 14:07:56’ AND ’2017-05-25 14:07:56’

如果加上毫秒的話,注意用冒號:,

create_time BETWEEN ’2016-05-25 14:07:56:000’ AND ’2017-05-25 14:07:56:000’

相關文章:
主站蜘蛛池模板: 五台县| 南岸区| 郸城县| 涟源市| 洪湖市| 侯马市| 综艺| 洪雅县| 隆回县| 托里县| 峨山| 区。| 禹州市| 开封市| 惠来县| 大方县| 清远市| 临西县| 牡丹江市| 遵化市| 万盛区| 双辽市| 益阳市| 榆林市| 治多县| 沂水县| 方山县| 阳高县| 大渡口区| 岢岚县| 江口县| 石渠县| 霞浦县| 板桥市| 岳普湖县| 平遥县| 高雄县| 曲靖市| 永济市| 五台县| 岳阳市|