1、NOW(),用于獲取當前日期和時間函數
select now() as '當前日期和時間' from dual;
返回:2020-05-26 20:27:21
2、CURDATE(),用于獲取當前日期,同CURRENT_DATE()
select curdate() as '當前日期' from dual;
返回:2020-05-26
3、CURTIME(),用于獲取當前時間,同CURRENT_TIME()
select curtime() as '當前時間' from dual;
返回:20:27:57
4、CURRENT_TIMESTAMP(),用于獲取當前日期和時間函數
select CURRENT_TIMESTAMP() from dual;
返回:2020-05-26 20:29:21
另外,在創(chuàng)建表時,可以為時間字段指定創(chuàng)建時間和更新時間
例如:
CREATE TABLE `t01` (
`name` varchar(64) DEFAULT '' COMMENT '名字',
`ctime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時間',
`utime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新時間'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
如果使用Navicat,在設置時間字段時,要勾選"根據當前時間戳更新",還要在默認欄中填上"CURRENT_TIMESTAMP"
5、DATE()函數,用于提取時間字段的日期,例如t01的tdate為'2020-05-26 11:11:11',返回的格式為"YYYY-mm-dd"
select date(tdate) from t01;
返回:2020-05-26
6、YEAR()函數,用于提取時間字段的年,例如t01的tdate為'2020-05-26 11:11:11',返回的格式為"YYYY"
select year(tdate) from t01;
返回:2020
7、MONTH()函數,用于提取時間字段的月,例如t01的tdate為'2020-05-26 11:11:11',返回的格式為"mm",若月份前有0會忽略
select month(tdate) from t01;
返回:5
8、DAY()函數,用于提取時間字段的日期,例如t01的tdate為'2020-05-26 11:11:11',返回的格式為"dd",若日期前有0會忽略
select day(tdate) from t01;
返回:26
9、TIME()函數,用于提取時間字段的時間,例如t01的tdate為'2020-05-26 11:11:11',返回的格式為"HH:ii:ss"
select time(tdate) from t01;
返回:11:11:11
10、HOUR()函數,用于提取時間字段的小時,例如t01的tdate為'2020-05-26 11:11:11',返回的格式為"HH",若小時前有0會忽略,如08則返回8
select hour(tdate) from t01;
返回:11
11、MINUTE()函數,用于提取時間字段的分鐘,例如t01的tdate為'2020-05-26 11:11:11',返回的格式為"ii",若分鐘前有0會忽略,如08則返回8
select minute(tdate) from t01;
返回:11
12、SECOND()函數,用于提取時間字段的秒,例如t01的tdate為'2020-05-26 11:11:11',返回的格式為"ss",若秒前有0會忽略,如08則返回8
select HOUR(tdate) from t01;
返回:11
13、UNIX_TIMESTAMP()函數,獲取當前時間戳,還可以將時間字段轉換成時間戳
select unix_timestamp()
返回:當前時間的時間戳
select unix_timestamp(tdate) from t01;
返回:1590462671
時間格式化函數
DATE_FORMAT()和TIME_FORMAT()功能相同
select date_format(tdate,'%Y-%m-%d %H:%i:%s') from t01;
返回:2020-05-26 11:11:11
select date_format(tdate,'%Y-%m-%d') from t01;
返回:2020-05-26
評論