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

MariaDBの時間値から分を返す4つの関数

    以下は、MariaDBの時間値から分部分を返すことができる4つの関数です。

    MINUTE() 機能

    MINUTE() 関数は、指定されたTIMEの分の部分を返します またはDATETIME 表現。議事録を抽出する時間である1つの引数を受け入れます。

    例:

    SELECT MINUTE('03:45:30');

    結果:

    +--------------------+
    | MINUTE('03:45:30') |
    +--------------------+
    |                 45 |
    +--------------------+

    TIME 値の範囲は'-838:59:59.999999'です。 to '838:59:59.999999' 。したがって、時間の部分は23よりもはるかに高くなる可能性がありますが 、分の部分は0の範囲にのみ含めることができます 59へ 。

    TIME 値は負になることもあります。このような場合、MINUTE() 正の値を返します。

    時間の部分が大きい負の時間値は次のとおりです。

    SELECT MINUTE('-838:59:59');

    結果:

    +----------------------+
    | MINUTE('-838:59:59') |
    +----------------------+
    |                   59 |
    +----------------------+

    分部分は期待どおりに抽出されます。

    EXTRACT() 機能

    EXTRACT() 関数を使用すると、日付/時刻の値から指定された単位を抽出できます。したがって、これを使用して、時間値から分(および他の単位)を抽出できます。

    例:

    SELECT EXTRACT(MINUTE FROM '10:47:01');

    結果:

    +---------------------------------+
    | EXTRACT(MINUTE FROM '10:47:01') |
    +---------------------------------+
    |                              47 |
    +---------------------------------+

    TIME_FORMAT() 機能

    TIME_FORMAT() 関数を使用すると、フォーマット文字列に基づいて時間値をフォーマットできます。 format文字列は、時刻のフォーマット方法を指定します。

    したがって、この関数を使用して、時刻から分(および時間と秒)を返すことができます。

    %iを使用する フォーマット指定子は、2桁の分を返します:

    SELECT TIME_FORMAT('10:07:30', '%i');

    結果:

    +-------------------------------+
    | TIME_FORMAT('10:07:30', '%i') |
    +-------------------------------+
    | 07                            |
    +-------------------------------+

    TIME_FORMAT() 関数は、DATE_FORMAT()で使用できるフォーマット文字列のサブセットを受け入れます 働き。 DATE_FORMAT()で使用できるフォーマット文字列/指定子の完全なリストについては、MariaDBフォーマット文字列を参照してください。 。 TIME_FORMAT() 関数は、時間、分、および秒のフォーマット指定子のみを受け入れます。その他の形式指定子は、nullになります。 または0 返送されます。

    DATE_FORMAT() 機能

    DATE_FORMAT() 関数を使用すると、フォーマット文字列に基づいて日付または日時の値をフォーマットできます。フォーマット文字列は、日付/時刻のフォーマット方法を指定します。

    したがって、TIME_FORMAT()で使用したものと同じ形式指定子を使用できます。 前の例の関数。ただし、DATE_FORMAT() TIMEを受け入れません 値なので、DATETIMEを渡す必要があります 値。

    SELECT DATE_FORMAT('2023-01-01 10:07:30', '%i');

    結果:

    +------------------------------------------+
    | DATE_FORMAT('2023-01-01 10:07:30', '%i') |
    +------------------------------------------+
    | 07                                       |
    +------------------------------------------+

    TIMEだけを渡す 値はこの関数では機能しません:

    SELECT DATE_FORMAT('10:07:30', '%i') AS '%i';

    結果:

    +------+
    | %i   |
    +------+
    | 00   |
    +------+

    1. 集計関数SUMを使用してレコードをフィルタリングする方法

    2. MySQLデータベースに写真を保存する方法

    3. ディレクトリに保存する前にアップロードしたファイルの名前を変更するにはどうすればよいですか?

    4. mysqlデータベースが存在するかどうかを確認する方法