sql >> データベース >  >> RDS >> MariaDB

MariaDBでのNOW()のしくみ

    MariaDBでは、NOW() 現在の日付と時刻を返す組み込みの日付と時刻の関数です。

    戻り値は、'YYYY-MM-DD HH:MM:SS'で返されます。 またはYYYYMMDDHHMMSS.uuuuuu 関数が文字列または数値のどちらのコンテキストで使用されているかに応じて、形式。

    戻り値は現在のタイムゾーンで表されます。

    マイクロ秒の精度を指定するオプションもあります。

    構文

    構文は次のようになります:

    NOW([precision])

    ここでprecision マイクロ秒の精度を指定するオプションの引数です。

    また、次の同義語があります。

    CURRENT_TIMESTAMP
    CURRENT_TIMESTAMP([precision])
    LOCALTIME
    LOCALTIME([precision])
    LOCALTIMESTAMP
    LOCALTIMESTAMP([precision])

    次に例を示します:

    SELECT NOW();

    結果:

    +---------------------+
    | NOW()               |
    +---------------------+
    | 2021-05-09 10:12:39 |
    +---------------------+

    数値コンテキスト

    NOW()の場合 数値コンテキストで使用される場合、結果はYYYYMMDDHHMMSS.uuuuuuになります。 フォーマット。

    例:

    SELECT
        NOW(),
        NOW() + 0;

    結果:

    +---------------------+----------------+
    | NOW()               | NOW() + 0      |
    +---------------------+----------------+
    | 2021-05-09 10:13:10 | 20210509101310 |
    +---------------------+----------------+

    精度

    マイクロ秒の精度を指定する例を次に示します。

    SELECT
        NOW(6),
        NOW(6) + 0;

    結果:

    +----------------------------+-----------------------+
    | NOW(6)                     | NOW(6) + 0            |
    +----------------------------+-----------------------+
    | 2021-05-09 10:13:30.619522 | 20210509101330.619522 |
    +----------------------------+-----------------------+

    マイクロ秒の精度の最大値は6です。精度に高い数値が渡されると、次のようになります。

    SELECT NOW(12);

    結果:

    ERROR 1426 (42000): Too big precision 12 specified for 'current_timestamp'. Maximum is 6

    同義語

    上記の構文に見られるように、NOW()の同義語がたくさんあります。 。

    さまざまな同義語を使用する例を次に示します。

    SELECT 
        CURRENT_TIMESTAMP,
        CURRENT_TIMESTAMP(),
        LOCALTIME,
        LOCALTIME(),
        LOCALTIMESTAMP,
        LOCALTIMESTAMP();

    結果(垂直出力を使用):

      CURRENT_TIMESTAMP: 2021-05-09 10:24:53
    CURRENT_TIMESTAMP(): 2021-05-09 10:24:53
              LOCALTIME: 2021-05-09 10:24:53
            LOCALTIME(): 2021-05-09 10:24:53
         LOCALTIMESTAMP: 2021-05-09 10:24:53
       LOCALTIMESTAMP(): 2021-05-09 10:24:53

    現在のタイムスタンプへの追加

    MariaDBで日時値の計算を実行する方法はたくさんあります。

    加算演算子(+)の使用例を次に示します。 )日付に2日を追加するには:

    SELECT 
        NOW(),
        NOW() + INTERVAL 2 DAY;

    結果:

    +---------------------+------------------------+
    | NOW()               | NOW() + INTERVAL 2 DAY |
    +---------------------+------------------------+
    | 2021-05-09 10:17:39 | 2021-05-11 10:17:39    |
    +---------------------+------------------------+

    DATE_ADD()などの関数も参照してください およびADDDATE() 現在の日付に追加する別の方法については。

    現在の日付から引く

    減算演算子(-)の使用例を次に示します。 )現在の日付から10日を引くには:

    SELECT 
        NOW(),
        NOW() - INTERVAL 10 DAY;

    結果:

    +---------------------+-------------------------+
    | NOW()               | NOW() - INTERVAL 10 DAY |
    +---------------------+-------------------------+
    | 2021-05-09 10:19:35 | 2021-04-29 10:19:35     |
    +---------------------+-------------------------+

    DATE_SUB()などの関数を参照してください およびSUBDATE() 現在の日付から減算する別の方法については。


    1. PostgreSQLで自動インクリメントの主キーを設定するにはどうすればよいですか?

    2. SQLでテーブルの名前を変更する方法

    3. より良いDBaaSを提供するために私たちを刺激してくれたAmazonに感謝します:SkySQL

    4. PostgreSQLで重複する日付をテストする方法