mysql 常用的時間日期函式小結

2022-07-17 10:09:09 字數 4442 閱讀 5905

本文主要是總結一些常用的在實際運用中常用的一些mysql時間日期以及轉換的函式

1.now()  :返回當前日期和時間

select

now();

//2018-04-21 09:19:21

2.curdate()   :返回當前日期

select

curdate();

//2018-04-21

3. dayofweek(data) : 返回日期 data 是星期幾

(1 = 星期日,2 =星期一...7=星期六,odbc標準)

select dayofweek(『2018-02-13

』);

//3

4.weekday(date) : 返回日期 data 是星期幾

(0 = 星期日,1 =星期一...6=星期六,odbc標準)

select weekday('

1997-10-04 22:23:00');

//5

5.dayofmonth(date) :返回date是乙個月中的第幾天(1-31 範圍)

select dayofmonth('

2018-04-21');

//21

6.dayofyear(date) : 返回date是一年中的第幾天(1-366 範圍)

select dayofyear('

2018-01-01');

//1

7.month(date):返回date 中的月份值

select month('

2018-04-21');

//4

8.dayname(date):返回date 是星期幾(英文名返回)

select dayname('

1998-02-05');

//thursday

9.monthname(date):返回date 是幾月(英文返回)

select monthname('

2018-02-01')

//february

10.quarter(date):返回date 是一年的第幾季度

select quarter('

2018-04-21');

//2

11.week(date,first):返回date 是一年的第幾周

(引數first:0表示週日是周的開始,1表示周一是周的開始,預設0)

select week('

2018-02-20

'); //

7select week('

2018-02-20

',0); //

7select week('

2018-02-20

',1); //

8

12.year(date) : 返回date 中的年份(範圍1000-9999)

select year('

98-02-03');

//1998

13.hour(time): 返回time 中的小時數(0-23)

select hour('

10:02:03');

//10

14.minute(time) : 返回time 中的分鐘數(0-59)

select minute('

10:20:59')

//20

15.second(time) : 返回time 中的秒數(0-59)

select second('

10:20:59')

//59

16.datediff(date_expression_1,date_expression_2)  :返回兩個日期之間的相差天數

select datediff('

2018-04-20

','2018-04-01');

//19

17.  date_add(date,interval expr type);

data_sub(data,interval expr type);

說明:對日期時間進行加減運算

引數一:date: 是乙個datetime 或者是date值

引數二:expr 新增的值,type 新增值的格式(年月日時分秒)

(1)新增年份 (year): select date_add("

2018-04-22

",interval 1 year); //

res: 2019-04-22

(2) 新增月數(month):select date_add("

2018-04-22

",interval 1 month); //

res: 2018-05-22

(3) 新增天數(day):select date_add("

2018-04-22

",interval 1 day); //

res: 2018-04-23

(4) 新增小時(hour):select date_add("

2018-04-22 10:08:38

",interval 1 hour); //

res: 2018-04-22 10:09:38

(5) 新增分鐘(minute):select date_add("

2018-04-22 10:08:38

",interval 1 minute); //

res: 2018-04-22 10:09:38

(6) 新增秒數(second):select date_add("

2018-04-22 10:08:38

",interval 1 second); //

res: 2018-04-22 10:09:39

(7) 新增年月(year_month):select date_add("

2018-04-22

",interval '

1-1' year_month); //

res: 2019-05-22

(8) 新增天數 小時(day_hour):select date_add("

2018-04-22 10:08:38

",interval '

1 1' day_hour); //

res: 2018-04-23 11:08:38

(9) 新增小時 分鐘(hour_minute):select date_add("

2018-04-22 10:08:38

",interval '

1:1' hour_minute); //

res: 2018-04-22 11:09:38

(10) 新增天, 小時, 分鐘, 秒(day_second):select date_add("

2018-04-22 10:08:38

",interval '

1 1:1:1

' day_second); //

res: 2018-04-23 11:09:39

18.data_format(date,format) :格式化乙個有效的日期時間值

說明:引數二:format:是由預定義的說明符(限定符)組成的格式字串

select date_format('

2018-08-20 10:08:38

',"%y-%m-%d");

//2018-08-20

19.unix_tiemstamp(date) :返回乙個unix 時間戳

說明:(從『19970-01-01 00:00:00』開始的秒數),date 預設當前時間(省略)

(1)select unix_timestamp();//

res : 1524279977

(2) select unix_timestamp('

1970-01-01 00:00:00

'); //

res: 0

20.from_unixtime(unix_timestamp,format) : 將乙個秒數的時間戳格式日期時間

說明:引數一:秒數的時間戳,引數二:指定格式,預設(年-月-日 時:分:秒) 『%y-%m-%d %h:%m:%s』

(1) select from_unixtime(1524280438); res://

2018-04-21 11:04:58

(2) select from_unixtime(1524280438,"

%y-%m-%d

"); res://

2018-04-21

完結。。。 謝謝

Mysql常用的時間日期函式

目 錄 0 前言 1 獲取當前時刻的時間函式 1.1 返回當前時刻的時間 1.2 獲取當前時刻的年月日 1.3 獲取當前時刻的時分秒 1.4 獲取當前時刻的所在的週數 1.5 獲取當前是一周內的週幾 1.6 extract函式返回當前日期中所在的年 月 日等 2 日期之間的時間運算 2.1 計算當前...

mysql時間日期函式

now current timestamp 當前日期時間 current date 當前日期 current time 當前時間 date yyyy mm dd hh ii ss 獲取日期部分 time yyyy mm dd hh ii ss 獲取時間部分 date format yyyy mm d...

mysql時間日期函式

now current timestamp 當前日期時間 current date 當前日期 current time 當前時間 date yyyy mm dd hh ii ss 獲取日期部分 time yyyy mm dd hh ii ss 獲取時間部分 date format yyyy mm d...