mysql中sql對時間的計算

2021-08-19 22:04:29 字數 699 閱讀 9090

很多時候需要對sql中的時間進行相關的計算來達到自己的目的

例如:我要查詢新使用者的登陸次數。則就需要查詢登陸時間比註冊時間小於30天之類的登陸次數(regtime+30day < logintime)。

1.select * from sys_user where timestamp(regtime,'30 00:00:00') > logintime

2.select * from sys_user where timestampadd(day,30,regtime) > logintime

3.select * from sys_user where timestampdiff(day,regtime,logintime) < 30

4.select * from sys_user where date_add(regtime,interval 30 day) > logintime

5.select * from sys_user where datediff(logintime,regtime) < 30

分別用timestamp(expr1,expr2)、timestampadd(unit,interval,datetime_expr)、timestampdiff(unit,datetime_expr1,datetime_expr2)、date_add(date,interval expr unit)、datediff(expr1,expr2)等是做篩選。

SQL 對時間的處理

獲取當前日期 如 yyyy mm dd select datename year,getdate datename month,getdate datename day,getdate 獲取當前日期 如 yyyy mm dd select datename year,getdate datename...

mysql對時間的加減

select timediff 23 40 00 18 30 00 兩時間相減 select substring timediff 23 40 00 18 30 00 1,5 05 10 相減返回小時 分鐘 select datediff 2008 08 08 2008 08 01 7 兩日期相減 ...

mysql對時間函式的處理

字首的月份的日期 1st,2nd,3rd,等等。y 年,數字,4 位 y 年,數字,2 位 a 縮寫的星期名字 sun sat d 月份中的天數,數字 00 31 e 月份中的天數,數字 0 31 m 月,數字 01 12 c 月,數字 1 12 b 縮寫的月份名字 jan dec j 一年中的天數...