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

UTCからISTに変換するmysql

    ISTはUTCより5.30時間進んでいるため、13番目がISTで開始する場合、つまり2015-03-13 : 00:00:00 その2015-03-12 18:30:00 UTCで

    mysql> select convert_tz('2015-03-13T00:00:00+00:00','+00:00','+05:30') ;
    +-----------------------------------------------------------+
    | convert_tz('2015-03-13T00:00:00+00:00','+00:00','+05:30') |
    +-----------------------------------------------------------+
    | 2015-03-12 18:30:00                                       |
    +-----------------------------------------------------------+
    1 row in set, 1 warning (0.00 sec)
    

    そして、13がISTで終わる場合、つまり2015-03-13 : 23:59:59 その2015-03-13 18:29:59 UTCで

    mysql> select convert_tz('2015-03-13T23:59:59+00:00','+00:00','+05:30') ;
    +-----------------------------------------------------------+
    | convert_tz('2015-03-13T23:59:59+00:00','+00:00','+05:30') |
    +-----------------------------------------------------------+
    | 2015-03-13 18:29:59                                       |
    +-----------------------------------------------------------+
    

    したがって、13日のISTでデータを取得するには、この範囲の日付内のデータを検索する必要があります。

    したがって、条件は次のようになります-

    s.created_at 
    between convert_tz('2015-03-13T00:00:00+00:00','+00:00','+05:30')
    and convert_tz('2015-03-13T23:59:59+00:00','+00:00','+05:30');
    

    選択時に変換を行っているため、13番目のデータがすべて返されます。



    1. utf8を使用したmysqldumpは、正しい絵文字文字列をエクスポートできません

    2. 平均的なSQLを見つける

    3. 条件が一意である場合のMySQLの個別カウント

    4. PHP / MySQL:SOUNDSLIKEクエリ結果を強調表示