mysql的時間函式整理

2022-04-15 03:11:20 字數 3061 閱讀 4939

**這裡總結的非常齊全:

mysql時間函式

對於每個型別擁有的值範圍以及並且指定日期何時間值的有效格式的描述見7.3.6 日期和時間型別。  

這裡是乙個使用日期函式的例子。下面的查詢選擇了所有記錄,其date_col的值是在最後30天以內:  

mysql> select something from table  

where to_days(now()) - to_days(date_col) <= 30;  

dayofweek(date)  

返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。這些索引值對應於odbc標準。  

mysql> select dayofweek('1998-02-03');  

-> 3  

weekday(date)  

返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。  

mysql> select weekday('1997-10-04 22:23:00');  

-> 5  

mysql> select weekday('1997-11-05');  

-> 2  

dayofmonth(date)  

返回date的月份中日期,在1到31範圍內。  

mysql> select dayofmonth('1998-02-03');  

-> 3  

dayofyear(date)  

返回date在一年中的日數, 在1到366範圍內。  

mysql> select dayofyear('1998-02-03');  

-> 34  

month(date)  

返回date的月份,範圍1到12。  

mysql> select month('1998-02-03');  

-> 2  

dayname(date)  

返回date的星期名字。  

mysql> select dayname("1998-02-05";  

-> 'thursday'  

monthname(date)  

返回date的月份名字。  

mysql> select monthname("1998-02-05";  

-> 'february'  

quarter(date)  

返回date一年中的季度,範圍1到4。  

mysql> select quarter('98-04-01');  

-> 2  

week(date)  

week(date,first)  

對於星期天是一周的第一天的地方,有乙個單個引數,返回date的週數,範圍在0到52。2個引數形式week()允許

你指定星期是否開始於星期天或星期一。如果第二個引數是0,星期從星期天開始,如果第二個引數是1, 

從星期一開始。  

mysql> select week('1998-02-20');  

-> 7  

mysql> select week('1998-02-20',0);  

-> 7  

mysql> select week('1998-02-20',1);  

-> 8  

year(date)  

返回date的年份,範圍在1000到9999。  

mysql> select year('98-02-03');  

-> 1998  

hour(time)  

返回time的小時,範圍是0到23。  

mysql> select hour('10:05:03');  

-> 10  

minute(time)  

返回time的分鐘,範圍是0到59。  

mysql> select minute('98-02-03 10:05:03');  

-> 5  

second(time)  

回來time的秒數,範圍是0到59。  

mysql> select second('10:05:03');  

-> 3  

period_add(p,n)  

增加n個月到階段p(以格式yymm或yyyymm)。以格式yyyymm返回值。注意階段引數p不是日期值。  

mysql> select period_add(9801,2);  

-> 199803  

period_diff(p1,p2)  

返回在時期p1和p2之間月數,p1和p2應該以格式yymm或yyyymm。注意,時期引數p1和p2不是日期值。  

mysql> select period_diff(9802,199703);  

-> 11  

//這個用的也很普遍:date_add向日期新增指定的時間間隔

date_add(date,interval expr type)

//向日期減去指定的時間間隔

date_sub(date,interval expr type)

例如:curdate()是指當前的日期。指獲取兩天前變化的資料。

and g.update_time>date_sub(curdate(),interval 2 day)

adddate(date,interval expr type)

subdate(date,interval expr type)  

current_date  (返回當前日期)

以'yyyy-mm-dd'或yyyymmdd格式返回今天日期值,取決於函式是在乙個字串還是數字上下文被使用。

MySQL 日期時間相關函式整理

為日期增加乙個時間間隔 date add select now select date add now interval 1year select date add now interval 1month select date add now interval 28 day select date...

時間函式整理

1.date函式 parse 將字串解析為date型別 format 將date型別轉為字串 1 format函式 dateformat sdf new dateformat yyyy mm dd date now new date string nowstring sdf.format now s...

常用的時間函式整理

這次的專案中,有很多用到了時間函式,報錯直接獲取本月的開始日期,結束如期。本週的開始時間,結束時間等。這裡簡單的記錄一下,方便下次引用。時間格式大家可以自行修改,例子中都是格式化成為了2019 07 01 15 55 00這樣的格式。最常用的乙個,就是對js原生new date 的擴充套件,可以格式...