mysql 時間戳有效範圍

2021-06-27 18:11:34 字數 603 閱讀 2137

事情

from_unixtime/unix_timestamp溢位, 無法使用

起因

from_unixtime返回的結果從1970-01-01到現在為止的秒數, 是int型的結果, 而int的有效範圍是[-2^31 + 1, 2^31 -1], 即[-2147483648, 2147483648], 2147483648/365/24/3600換算成年也就68年多, 則最大有效期是2023年的一天.

處理

相容之前的處理, 先可以使用, 則先減後加30年, 則可以暫時向後擴充套件30年.

select date_add(from_unixtime(2524464000-946656000), interval 30 year);

select (unix_timestamp(date_add('2050-01-01 00:00:00', interval -30 year)) + 946656000);

不過, 目前的做法則是, 資料表增加乙個字段, 直接用varchar(10)儲存時間, 而不用數值.

php時間戳範圍

這是獲取當月月初和月末的時間戳 beginthismonth mktime 0,0,0,date m 1,date y endthismonth mktime 23,59,59,date m date t date y php獲取今日開始時間戳和結束時間戳 begintoday mktime 0,0...

mysql更新時間戳 Mysql中時間戳自動更新

mysql時間戳字段更新 timestamp是mysql中的時間戳字段,這個字段可以支援自動新增和更新。1.概述 在我們設計表的時候,考慮將行資料的建立時間和最後更新時間記錄下來是很好的實踐。尤其是可能需要做資料同步或者對資料新鮮度有要求的表。舉些應用場景,更新距上次更新超過2小時的行資料,或者是將...

mysql time 範圍 Mysql時間範圍相關

mysql時間範圍相關 mysql to days函式 to days函式 返回從0000年 公元1年 至當前日期的總天數。1,查詢當天 今天 的資料 select from order where to days order time to days now 2,查詢昨天的資料 select fr...