MySQL の日付関数の概要

黄舟
黄舟オリジナル
2017-09-26 14:09:393405ブラウズ

MySQLの日付と時刻の関数に関しては、毎回新しい機能が見つかるので、単純に統一して整理してメモライブラリを補完するだけです。抜けがあるかもしれませんが、追加よろしくお願いします。

この記事では、分析のために 4 つの段落に分割された 30 個の時刻と日付の関数をまとめました。詳細については、以下を参照してください。

1 時刻関数を取得します

  • 現在時刻を取得します

    • sysdate()

    • now() 、 current_timestamp() 、 current_timestamp 、 LOCALTIME 、 LOCALTIME() 、 LOCALTIMESTAMP 、 LOCALTIMESTAMP()

  • rest ns

    • sleep(n)

    • 同一: 現在の瞬間を取得します

    • 違い: 返却時間は、 SQLを実行 または関数を呼び出した時の時刻値

    • sysdate()、関数を呼び出した時の時刻値を返す

    • now()、current_timestamp()/current_timestamp、 LOCALTIME、LOCALTIME()、LOCALTIMESTAMP、LOCALTIMESTAMP () ステートメントが呼び出されたときに時刻値を返します。

    • 使用中は、3 つの

    • now() の違いを明確にしてください。 、current_timestamp()、current_timestamp、LOCALTIME、LOCALTIME()、LOCALTIMESTAMP、LOCALTIMESTAMP()

2時間計算関数

  • 時差

    • datediff(date1, date2) 、時間差( time1, time2), ampdiff(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)

    • 2つの違い時間

    • 間隔は次のとおりです: EFrac_second ミリ秒、second 秒、分分、時

    • 日、曜日、週、月、四半期、四半期、年

    • 2 回時間差の短縮、相互に短縮される 2 つの時間の差。2 つの日付は同じ形式である必要があることに注意してください

    • 2 つの日付間の日数の差。同じ形式にする
    • datediff( date1, date2 )
    • timediff( time1 , time2 )
    • TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr) 2)
    • date_sub( date, INTERVALexp r type )
  • 日付から指定した時間間隔に移動します。

  • expr が正の場合はこの時間間隔が減算され、expr が負の場合は負の数値が減算され、加算と同じになります。
    • date パラメーターは有効な日付式です。 expr パラメータは、追加する時間間隔です。以下のタイプを参照してください
    • @date = '2017-09-09 09:09:09'
    • 型の値 date_sub( @date ,INTERVAL 2 MICROSECOND )
    • 2017-09-09 09:09:08.999998secMINUTE minutes date_sub( @date ,INTERVAL 2 MINUTE ):09時間時間date_sub( @date ,INTERVAL 2 HOUR):07:09DAYDAYdate_sub( @date ,INTERVAL 2 DAY )09:09:09WEEKweekdate_sub ( @date ,INTERVAL 2 WEEK ) 09:09:09MONTH 月 date_sub( @date ,INTERVAL 2 MONTH )-09 09:09:09QUARTER(四半期、3か月)四半期date_sub( @date ,INTERVAL 2 QUARTER )-09 09:09:09 YEAR 06.980000MINUTE_MICROSECOND07:06.800000MINUTE_SECOND 07:07:06.800000HOUR_SECOND07 :07:07HOUR_MINUTE07:07DAY_MICROSECOND07 07:07:06.800000DAY_SECOND07 07:07:07DAY_MINUTE 07 07:07DAY_HOUR07 07YEAR_MONTH2015-07
      • 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)

        • 四半期

        • Day

        • Week

        • Hour 3. 時間変換関数

        • from_unixtime(), unix_timestamp( )

        • 前者はタイムスタンプを日付時刻形式に変換します。後者は、日付時刻形式を timestamp
        • makedate(year, day_of_year), maketime(hour, minutes, 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 )
        前者は日付と時刻を指定した形式のテキストに変換し、後者はテキストを指定した形式の日付と時刻に変換します
      • lift
        • 実践応用
        SELECT NOW(), DATE_FORMAT(NOW(),'%Y-%m-%d') '%Y-%m-%d';
        • 時間モジュール

        • 時間
        • %
        • %Y 年、4桁

        • %y 年、2桁

        • %b 月の短縮名

        • %c 月、値

        • %M 月名前
        • %m 月、値 (00-12)
        • %D 英語の接頭辞が付いた日

        • %d 月の日、値 (00-31 )

        • %e 月の日、値 (0-31)
        • %j 年間の日 (001-366)
        • %T 時刻、24 時間制 (hh) :mm:ss)

        • %r 時間、12 時間制 (hh:mm:ss AM または PM)

        • %H 時間 (00-23)

        • %k 時間 (0-23 )

        • %h 時間 (01-12)

        • %I 時間 (01-12) #%h は %I (大文字の i) と変わりません

        • %l 時間 (1-12) 下case L

        • %p AM または PM

        • %i 分、値 (00-59)

        • %S 秒 (00 - 59)

        • %s 秒 (00-59)

        • %f マイクロ秒

        • %a 週の短縮名

        • %W 週名、完全な英語名は Saturday

        • %w曜日 (0=日曜日、6=土曜日、0-6)

        • %U Week(00-52) 日曜日は週の最初の日です

        • %u Week(00-52) 月曜日は週の最初の日です

        • %V 週 (01-53) 日曜日は週の最初の日で、%X とともに使用されます

        • %v 週 (01-53) 月曜日は週の最初の日です週、

        • を%xとともに使用して、文字列内の年、月、日、時刻の文字がフォーマット

        • タイムゾーンに変換されます。変換

        • datetime from_ztのタイムゾーンの場合、to_tzタイムゾーンの時間を返します

        • タイムスタンプを変換

        • makedate based on 年と日を日付に変換します

        • maketime 時間を時、分、秒に基づいた時間に変換します

        • 時間を変換タイムスタンプに変換

        • タイムスタンプを時間に変換

        • from_unixtime

        • unix_timestamp

        • makedate(年、年の日)、maketime(時、分,秒)

        • date(datetime)

        • timestamp(日付), timestamp(日付,時刻)

        • convert_tz(datetime,from_tz,to_tz)

        • str_to_date(string,format)

        • 4 time)
      todays

      '0000-00-00' から datetime までの日数を返します

      • 年の日
        • 、戻りますdatetime 年の何日か
        • 月の日

        • 、datetime この日が月の何日かを返します
        • 2番目の変換

        • time_to_sec(時間), sec_to_time(数値)

          前者は時間を基準に秒に変換し、後者は秒を基準に時間に変換します
      SECOND

      date_sub( @date ,INTERVAL 2 SECOND )
      2017-09- 09 09:09:
      07
      2017-09-09 09:07
      2017-09-09 07
      2017-09- 07
      2017-08-26
      2017-07
      2017-03
      year sub(@ date ,INTERVAL '2.2' SECOND_MICROSECOND ) 2017-09-09 09:09:
      数分から 10 分の 1 秒までの式 date_sub( @date ,INT ERVAL '2 :2.2' MINUTE_MICROSECOND ) 2017-09-09 09:
      表現、から分から秒 date_sub( @date ,INTERVAL '2:2' _SECOND ) 09:09:07 2017 -09-09
      式、時間から秒 date_sub( @date ,INTERVAL '2:2:2' HOUR_SECOND ) 2017-09-09
      式、時から分 date_sub( @date ,INTERVAL '2:2' HOUR_MINUTE ) 2017-09-09 :09
      式、日から10分の1秒まで、 date_sub( @date ,INTERVAL '2 2:2 :2.2' DAY_MICROSECOND ) 2017-09-
      式、日から秒、 date_sub( @date ,INTERVAL '2: 2分 DAY_SECOND) 2017-09-
      式、日から分、 date_sub( @date ,INTERVAL '2 2:2 ' DAY_MINUTE ) 2017-0 9-:09
      式、日から時まで、 date_sub( @date ,INTERVAL '2 2' DAY_HOUR ) 2017-09-:09:09
      式、年から月、 date_sub( @date , INTERVAL '2 2' YEAR_MONTH ) -09 09:09:09

以上がMySQL の日付関数の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。