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

MySQL年月日で年齢を計算する

    モジュロを使用して、月と日の数を決定できます。

    SELECT
          nama
        , gender
        , dob
        , TIMESTAMPDIFF( YEAR, dob, now() ) as _year
        , TIMESTAMPDIFF( MONTH, dob, now() ) % 12 as _month
        , FLOOR( TIMESTAMPDIFF( DAY, dob, now() ) % 30.4375 ) as _day
    FROM 
        sampelaja
    

    結果は次のとおりです。

    +-----------------+--------+------------+-------+--------+------+
    | nama            | gender | dob        | _year | _month | _day |
    +-----------------+--------+------------+-------+--------+------+
    | Rizkiyandi      |      1 | 2010-05-21 |     4 |      3 |   13 |
    | Siti Khodijah   |      0 | 1980-03-15 |    34 |      5 |   19 |
    | Aisyah Az-zahra |      0 | 1986-08-17 |    28 |      0 |   17 |
    | Paritem         |      0 | 2005-12-13 |     8 |      8 |   20 |
    | Ngadimin        |      1 | 2014-08-28 |     0 |      0 |    6 |
    +-----------------+--------+------------+-------+--------+------+
    

    日数は、前月から今日までの誕生日から計算されます。

    番号30.4375 次の式を使用して計算しました:[DAYS IN YEAR] / 12、ここで[DAYS IN YEAR] =365.25



    1. Zend_Auth_Adapter_DbTableに指定されたパラメーターは、有効なSQLステートメントを生成できませんでした

    2. php mysql insert(max(id)+1)

    3. MicrosoftAccessランタイムを使用する際の落とし穴

    4. DjangoMySQL全文検索