Mysql 時間處理函式使用

2021-05-24 12:45:38 字數 1751 閱讀 2606

一、基本介紹

1.to_days(date)

給出乙個日期 date,返回乙個天數(從 0 年開始的天數):

mysql> select to_days(20110311);

+-------------------+

| to_days(20110311) |

+-------------------+

|            734572 |

+-------------------+

1 row in set (0.00 sec)

mysql> select to_days('1986-01-19');

+-----------------------+

| to_days('1986-01-19') |

+-----------------------+

|                725390 |

+-----------------------+

1 row in set (0.00 sec)

to_days() 無意於使用先於格里高里曆法(即現行的陽曆)(1582)出現的值,因為它不考慮當曆法改變時所遺失的天數。

2.from_days(n)

給出乙個天數 n,返回乙個 date 值:

mysql> select from_days(725390);

+-------------------+

| from_days(725390) |

+-------------------+

| 1986-01-19        |

+-------------------+

1 row in set (0.00 sec)

3.now()

得到當前的日期

mysql> select now();           

+---------------------+

| now()               |

+---------------------+

| 2011-03-11 15:49:06 |

+---------------------+

1 row in set (0.00 sec)

4.date_format(date, format)

格式化日期

mysql> select date_format(now(),'%y-%m-%d');

+-------------------------------+

| date_format(now(),'%y-%m-%d') |

+-------------------------------+

| 2011-03-11                    |

+-------------------------------+

1 row in set (0.01 sec)

二、應用

1.查詢今天之內的所有記錄

select distinct something from table where timestamp > date_format(now(),'%y-%m-%d')

2.查詢距離當前12個小時之內的所有記錄

select distinct something from table where to_days(now()) - to_days(timestamp)<=0.5;

mysql處理時間 mysql處理時間

將標準格式的日期的轉為指定格式 x這個欄位不一定需要是什麼型別,字串只要是標準的型別就可以轉 date format x,y m date format curdate y m 這裡是單引號,裡面是字串,直接複製可能會有問題,自己改下即可.得到當前的時間戳 unix timestamp 括號裡面傳標...

mysql裡面時間處理函式cast

現在我們來看看mysql是怎麼轉換的,只需要乙個cast 函式就能搞定。其語法為 cast 欄位名 as 轉換的型別 其中型別可以為 char n 字元型 date 日期型 datetime 日期和時間型 decimal float型 signed int 年月日分時秒組成的int,例如201708...

MYSQL時間函式簡單使用

sql三條,分別求每天的行程量,每週的,每月的 這一年內每個月的資料 select monthname start time month,sum time to sec timediff end time,start time secondsoftime,sum time to sec timedi...