mySQL的datetime的時間間隔

2021-12-30 12:52:15 字數 840 閱讀 3648

mysql比較兩個datetime型別的時間間隔,以秒為單位:

selecttime_to_sec(timediff('2009-02-09 11:24:46','2009-02-09 10:23:46'));

先看select timediff('2009-02-09 11:24:46','2009-02-09 10:23:46')select time_to_sec('01:01:00')因此便知兩個datetime資料之間相差的秒數。如果我們考慮這兩個datetime資料先用time_to_sec轉化為各自秒數,再來相減,不是一樣的效果嗎?select time_to_sec('2009-02-09 11:24:46')-time_to_sec('2009-02-09 10:23:46')3660看似這種方法也ok,不過我們再觀察一組資料,你就清楚為什麼不能用這種方式來比較兩個datetime資料之間的時間間隔了。我們現在改用'2009-02-0811:24:46'和'2009-02-09 10:23:46'比較:select time_to_sec('2009-02-0811:24:46')-time_to_sec('2009-02-09 10:23:46')3660奇怪了,左邊引數已經比右邊引數提早一天了,為什麼秒數相減還是正值呢?原來,time_to_sec只會把datetime資料的time部分轉化為秒數,不會關心date誰大誰小,所以要比較兩個datetime資料,先得timediff一下,再轉化為秒數,即開頭寫的:select time_to_sec(timediff('2009-02-09 11:24:46','2009-02-09 10:23:46'));

MySQL的datetime設定當前時間為預設值

mysql的datetime設定當前時間為預設值 關鍵字 mysql的datetime設定當前時間為預設值 mysql的datetime設定當前時間為預設值 由於mysql目前欄位的預設值不支援函式,所以用 create time datetime default now 的形式設定預設值是不可能的...

mysql中的datetime型別的比較

例如有乙個user表如下 create table user id int 11 primary key,name varchar 50 not null,age int 3 not null,create time datetime not null 一 date 如需要查詢近乙個月新增的使用者 ...

關於插入DateTime到Mysql的問題

其實我很早就知道可以用timestamp,但是昨天遇到乙個該死的問題,老是報錯com.mysql.jdbc.mysqldatatruncation,我百思不得其解,用了差不多半天時間發現問題是sql寫的問題,tttttttttttttttttttt。update tbl users set star...