<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      MySQL中對于日期函數總結

      [摘要]關于MySQL日期時間函數,每回總能發現一些新特性,索性做一次統一的整理,補充下筆記庫?梢詴兴z漏,歡迎補充。 本文整理了30個時間日期函數,分為4個段落分析,詳見下文。 1 獲取時間...
      關于MySQL日期時間函數,每回總能發現一些新特性,索性做一次統一的整理,補充下筆記庫?梢詴兴z漏,歡迎補充。

      本文整理了30個時間日期函數,分為4個段落分析,詳見下文。

      MySQL中關于日期函數匯總

      1 獲取時間函數

      • 獲取當前時間

        • sysdate()

        • now() , current_timestamp(), current_timestamp,LOCALTIME ,LOCALTIME() ,LOCALTIMESTAMP ,LOCALTIMESTAMP()

      • 休息ns

        • sleep(n)

      • 例子

        • 相同點:獲取當前時刻

        • 區別:返回時刻是什么時候,執行SQL還是調用該函數的時間值

        • MySQL中關于日期函數匯總

        • sysdate(),返回函數調用時刻的時間值

        • now() ,current_timestamp()/current_timestamp ,LOCALTIME ,LOCALTIME() ,LOCALTIMESTAMP ,LOCALTIMESTAMP() 返回語句調用時的時間值;

        • 使用過程中,請明確清理這三者的區別

        • MySQL中關于日期函數匯總

        • now() , current_timestamp(), current_timestamp,LOCALTIME ,LOCALTIME() ,LOCALTIMESTAMP ,LOCALTIMESTAMP()

      2 時間計算函數

      • 時間之差

        • datediff(date1, date2 ),timediff(time1 , time2 ), timestampdiff(interval,datetime_expr1,datetime_expr2)

      • 時間加減法

        • date_sub( date, INTERVAL expr type )

        • DATE_ADD(date,INTERVAL expr type)

        • adddate(date,INTERVAL expr type ) ,timestampadd(interval, count, timestamp)

      • 例子

        • 兩個時間之差

        • interval 可以是:

        • FRAC_SECOND 毫秒 ,SECOND 秒 ,MINUTE 分鐘 ,HOUR 小時

        • DAY 天 ,WEEK 星期 ,MONTH 月 ,QUARTER 季度 ,YEAR 年

        • MySQL中關于日期函數匯總

        • 兩個時間相減的相差時間,注意,需要是一樣的格式

        • MySQL中關于日期函數匯總

        • 兩個日期相減得相差天數,注意,兩個需是一樣的格式

        • MySQL中關于日期函數匯總

        • datediff( date1, date2 )

        • timediff( time1 , time2 )

        • TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)

      • date_sub( date, INTERVAL expr type )

        • 日期減去指定的時間間隔。

        • expr為正,則為減去這個時間間隔;expr為負,減去負數,等于加法

        • date 參數是合法的日期表達式。expr 參數是您希望添加的時間間隔。type可以參考下方

        • @date = '2017-09-09 09:09:09'

        • Type 值


          MICROSECOND十分之一秒 , ±ndate_sub( @date ,INTERVAL 2 MICROSECOND )2017-09-09 09:09:08.999998
          SECONDdate_sub( @date ,INTERVAL 2 SECOND )2017-09-09 09:09:07
          MINUTE分鐘date_sub( @date ,INTERVAL 2 MINUTE )2017-09-09 09:07:09
          HOUR小時date_sub( @date ,INTERVAL 2 HOUR)2017-09-09 07:07:09
          DAYdate_sub( @date ,INTERVAL 2 DAY )2017-09-07 09:09:09
          WEEKdate_sub( @date ,INTERVAL 2 WEEK )2017-08-26 09:09:09
          MONTHdate_sub( @date ,INTERVAL 2 MONTH )2017-07-09 09:09:09
          QUARTER(季度,3個月)季度date_sub( @date ,INTERVAL 2 QUARTER )2017-03-09 09:09:09
          YEARdate_sub( @date ,INTERVAL 2 YEAR )2015-09-09 09:09:09
          SECOND_MICROSECOND表達式,從秒到十分之1秒date_sub( @date ,INTERVAL '2.2' SECOND_MICROSECOND )2017-09-09 09:09:06.980000
          MINUTE_MICROSECOND表達式,從分鐘到十分之一秒date_sub( @date ,INTERVAL '2:2.2' MINUTE_MICROSECOND )2017-09-09 09:07:06.800000
          MINUTE_SECOND表達式,從分鐘到秒date_sub( @date ,INTERVAL '2:2' MINUTE_SECOND )2017-09-09 09:07:07
          HOUR_MICROSECOND表達式,從小時到十分之一秒date_sub( @date ,INTERVAL '2:2:2.2' HOUR_MICROSECOND )2017-09-09 07:07:06.800000
          HOUR_SECOND表達式,小時到秒date_sub( @date ,INTERVAL '2:2:2' HOUR_SECOND )2017-09-09 07:07:07
          HOUR_MINUTE表達式,小時到分鐘date_sub( @date ,INTERVAL '2:2' HOUR_MINUTE )2017-09-09 07:07:09
          DAY_MICROSECOND表達式,天到十分之一秒,date_sub( @date ,INTERVAL '2 2:2:2.2' DAY_MICROSECOND )2017-09-07 07:07:06.800000
          DAY_SECOND表達式,天到秒,date_sub( @date ,INTERVAL '2 2:2:2' DAY_SECOND )2017-09-07 07:07:07
          DAY_MINUTE表達式,天到分鐘,date_sub( @date ,INTERVAL '2 2:2 ' DAY_MINUTE )2017-09-07 07:07:09
          DAY_HOUR表達式,天到小時,date_sub( @date ,INTERVAL '2 2' DAY_HOUR )2017-09-07 07:09:09
          YEAR_MONTH表達式,年到月,date_sub( @date ,INTERVAL '2 2' YEAR_MONTH )2015-07-09 09:09:09
      • DATE_ADD(date,INTERVAL expr type)

        • 日期增加指定的時間間隔,使用方法 跟 date_sub一樣

      • adddate(date,INTERVAL expr type )

        • 日期增加 n 天

        • 日期增加指定的時間間隔,使用方法 DATE_ADD 一樣

        • adddate(date,INTERVAL expr type )

        • adddate(date, n )

      • timestampadd(interval, count, timestamp)

        • Year

        • quarter

        • Month

        • Day

        • Week

        • Hour

        • minute

        • second

        • millisecond

        • MySQL中關于日期函數匯總

        • 時間增加函數

      3 時間轉換函數

      • from_unixtime(),unix_timestamp()

        • 前者將 時間戳 轉化為 日期時間 格式,后者將 日期時間 格式轉化為時間戳

      • makedate(year, day_of_year),maketime(hour,minute,second)

        • makedate 根據 年份跟年份中的第幾天,轉化為日期

        • maketime 根據 小時 分鐘 秒 ,轉化為時間

      • date(datetime),timestamp(date [,time])

        • 前者將 日期時間 格式 轉化為 日期格式(僅含有 年月日),后者 將日期 轉化為 日期時間 格式

      • convert_tz(datetime, from_tz, to_tz)

        • 根據 A 時區的時間,返回在B時區 的時間是多少

      • date_format(datetime,format),str_to_date(string,format)

        • 前者將 日期時間 轉化為 指定格式的文本,后者將 文本 轉化為制定格式的 日期時間

        • 實際應用

        • SELECT NOW(),DATE_FORMAT(NOW(),'%Y-%m-%d') '%Y-%m-%d';

        • MySQL中關于日期函數匯總


        • 時間模塊

        • 小時

        • 分鐘

        • %X 年,其中的星期日是周的第一天,4 位,與 %V 使用

        • %x 年,其中的星期一是周的第一天,4 位,與 %v 使用

        • %Y 年,4 位

        • %y 年,2 位

        • MySQL中關于日期函數匯總

        • %b 縮寫月名

        • %c 月,數值

        • %M 月名

        • %m 月,數值(00-12)

        • MySQL中關于日期函數匯總

        • %D 帶有英文前綴的月中的天

        • %d 月的天,數值(00-31)

        • %e 月的天,數值(0-31)

        • %j 年的天 (001-366)

        • MySQL中關于日期函數匯總

        • %T 時間, 24-小時 (hh:mm:ss)

        • %r 時間,12-小時(hh:mm:ss AM 或 PM)

        • MySQL中關于日期函數匯總MySQL中關于日期函數匯總

        • %H 小時 (00-23)

        • %k 小時 (0-23)

        • %h 小時 (01-12)

        • %I 小時 (01-12) #%h跟%I,沒區別 ( 大寫的 i )

        • %l 小時 (1-12) 小寫的 L

        • %p AM 或 PM

        • MySQL中關于日期函數匯總

        • MySQL中關于日期函數匯總

        • %i 分鐘,數值(00-59)

        • MySQL中關于日期函數匯總

        • %S 秒(00-59)

        • %s 秒(00-59)

        • %f 微秒

        • %a 縮寫星期名

        • %W 星期名,英文全稱 Saturday

        • %w 周的天 (0=星期日, 6=星期六,0-6)

        • %U 周 (00-52) 星期日是一周的第一天

        • %u 周 (00-52) 星期一是一周的第一天

        • %V 周 (01-53) 星期日是一周的第一天,與 %X 使用

        • %v 周 (01-53) 星期一是一周的第一天,與 %x 使用

        • MySQL中關于日期函數匯總

        • 將 string 轉化為 日期格式,string 哪幾個字符是年月日時間,由format匹配

        • MySQL中關于日期函數匯總

        • 時區轉化

        • datetime為from_zt的時區,返回to_tz時區的時間

        • MySQL中關于日期函數匯總

        • 時間戳到轉換

        • MySQL中關于日期函數匯總

        • 日期時間格式 轉化為 日期格式

        • MySQL中關于日期函數匯總

        • makedate 根據 年份跟年份中的第幾天,轉化為日期

        • maketime 根據 小時 分鐘 秒 ,轉化為時間

        • MySQL中關于日期函數匯總

        • 將時間轉化為時間戳

        • MySQL中關于日期函數匯總

        • 將時間戳轉化為時間

        • MySQL中關于日期函數匯總

        • from_unixtime

        • unix_timestamp

        • makedate(year, day_of_year),maketime(hour,minute,second)

        • date(datetime)

        • timestamp(date),timestamp(date,time)

        • convert_tz(datetime,from_tz,to_tz)

        • str_to_date(string,format)

        • date_format

      4 獲取部分函數

      • 獲取第幾天

        • to_days(datetime ),dayofyear(datetime ),dayofmonth(datetime)

        • todays返回從 '0000-00-00' 到datetime之間隔了多少天

        • dayofyear,返回 datetime 這一天是一年中的第幾天

        • dayofmonth,返回 datetime 這一天是 一個月中的第幾天

        • MySQL中關于日期函數匯總

      • 秒轉化

        • time_to_sec(time),sec_to_time(number)

        • 前者根據時間轉化為秒數,后者根據秒數轉化為時間

        • MySQL中關于日期函數匯總

      以上就是MySQL中關于日期函數匯總的詳細內容,更多請關注php中文網其它相關文章!


      學習教程快速掌握從入門到精通的SQL知識。




      日韩精品一区二区三区高清