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

MariaDBの日時値にマイクロ秒を追加する8つの方法

    MariaDBの日時の値に1マイクロ秒以上を追加する必要がある場合は、次の8つのオプションを検討してください。

    DATE_ADD() 機能

    DATE_ADD() 関数を使用すると、日付または日時式に金額を追加できます。これには、時間、分、秒、マイクロ秒などの時間部分の追加が含まれます。

    例:

    SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND);

    結果:

    +----------------------------------------------------------+
    | DATE_ADD('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND) |
    +----------------------------------------------------------+
    | 2021-05-01 10:00:00.000035                               |
    +----------------------------------------------------------+

    この場合、日時式に35マイクロ秒を追加しました。 SECONDに注意してください 1秒以上追加するかどうかに関係なく、キーワードは複数形のままです。

    また、マイクロ秒の部分が元の日時の値に含まれていなかったことにも気付くかもしれませんが、マイクロ秒を追加すると追加されました。

    同様の方針に沿って、日付だけを提供するとどうなりますか:

    SELECT DATE_ADD('2021-05-01', INTERVAL 35 MICROSECOND);

    結果:

    +-------------------------------------------------+
    | DATE_ADD('2021-05-01', INTERVAL 35 MICROSECOND) |
    +-------------------------------------------------+
    | 2021-05-01 00:00:00.000035                      |
    +-------------------------------------------------+

    時間の部分が結果に追加され、最初の時刻は 00:00:00.000000であると想定されます。 。

    複合日付/時刻単位を使用して、複数の単位を追加することもできます。たとえば、1分30秒を追加する場合は、次のように実行できます。

    SELECT 
    DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' SECOND_MICROSECOND);

    結果:

    +---------------------------------------------------------------------+
    | DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' SECOND_MICROSECOND) |
    +---------------------------------------------------------------------+
    | 2021-05-01 10:00:01.300000                                          |
    +---------------------------------------------------------------------+

    日付/時刻単位の完全なリストについては、MariaDBの日付と時刻の単位を参照してください。

    ADDDATE() 機能

    日時式に秒を追加する別の方法は、 ADDDATE()を使用することです。 働き。この関数には2つの構文があります:

    1. 1つの構文を使用すると、日付に日数を追加できますが、これはここで行っていることではありません。
    2. 他の構文は、 DATE_ADD()と同じです。 上記の機能。この構文を使用する場合、 ADDDATE() DATE_ADD()の同義語です 。

    例:

    SELECT ADDDATE('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND);

    結果:

    +---------------------------------------------------------+
    | ADDDATE('2021-05-01 10:00:00', INTERVAL 35 MICROSECOND) |
    +---------------------------------------------------------+
    | 2021-05-01 10:00:00.000035                              |
    +---------------------------------------------------------+

    DATE_SUB() 機能

    DATE_SUB() 関数を使用すると、減算できます 日付/日時式の金額。ただし、減算する負の値を指定すると、加算されます。 日付/時刻まで。

    例:

    SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND);

    結果:

    +-----------------------------------------------------------+
    | DATE_SUB('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND) |
    +-----------------------------------------------------------+
    | 2021-05-01 10:00:00.000035                                |
    +-----------------------------------------------------------+

    SUBDATE() 機能

    SUBDATE() 関数はDATE_SUB()の同義語です 次の構文を使用する場合。

    例:

    SELECT SUBDATE('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND);

    結果:

    +----------------------------------------------------------+
    | SUBDATE('2021-05-01 10:00:00', INTERVAL -35 MICROSECOND) |
    +----------------------------------------------------------+
    | 2021-05-01 10:00:00.000035                               |
    +----------------------------------------------------------+

    + オペレーター

    別のオプションは、 +を使用することです オペレーター。

    + 演算子は加算を実行するために使用され、日付に使用できます。また、該当する日付/時刻の単位を使用して、日時式に特定のマイクロ秒数を追加できます。

    例:

    SELECT '2021-05-01 10:00:00' + INTERVAL 35 MICROSECOND;

    結果:

    +-------------------------------------------------+
    | '2021-05-01 10:00:00' + INTERVAL 35 MICROSECOND |
    +-------------------------------------------------+
    | 2021-05-01 10:00:00.000035                      |
    +-------------------------------------------------+

    - オペレーター

    - 演算子を使用して、日付から金額を減算できます。ただし、負の数を減算するために使用される場合、結果は、日時式に正の量が追加されます。

    SELECT '2021-05-01 10:00:00' - INTERVAL -35 MICROSECOND;

    結果:

    +--------------------------------------------------+
    | '2021-05-01 10:00:00' - INTERVAL -35 MICROSECOND |
    +--------------------------------------------------+
    | 2021-05-01 10:00:00.000035                       |
    +--------------------------------------------------+

    ADDTIME() 機能

    ADDTIME()を使用できます 日時式にミリ秒数を追加する関数。

    例:

    SELECT ADDTIME('2021-05-01 10:00:00', '00:00:00.123456');

    結果:

    +---------------------------------------------------+
    | ADDTIME('2021-05-01 10:00:00', '00:00:00.123456') |
    +---------------------------------------------------+
    | 2021-05-01 10:00:00.123456                        |
    +---------------------------------------------------+

    この関数の利点の1つは、時間、秒などの他の時間単位も変更できることです。

    SUBTIME() 機能

    または、切り替えて SUBTIME()を使用することもできます。 必要に応じて負の値を使用してください:

    SELECT SUBTIME('2021-05-01 10:00:00', '-00:00:00.123456');

    結果:

    +----------------------------------------------------+
    | SUBTIME('2021-05-01 10:00:00', '-00:00:00.123456') |
    +----------------------------------------------------+
    | 2021-05-01 10:00:00.123456                         |
    +----------------------------------------------------+

    その他の日付と時刻の単位

    上記の例では、日時の値にマイクロ秒数が追加されていますが、同じ手法を使用して任意の日時の単位を追加できます。上記の関数と演算子で使用できる日付/時刻単位の完全なリストについては、MariaDBの日付と時刻の単位を参照してください。


    1. SQL Serverの現在のすべての一時テーブルのリストを取得する方法はありますか?

    2. 書評:Benjamin Nevarez:クエリの調整と最適化

    3. 同じテーブル(SQL Server)の2つの行を比較するにはどうすればよいですか?

    4. postgresqlの最大行数に関する制約を作成するにはどうすればよいですか?