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

MySQL-時間をグループ化する方法、30分オフセット

    解決策は、タイムスライスを含むヘルパーテーブルを使用することです。

    FromHourとToHourは単なる文字列です

    TABLE timeslice
    ID | FromHour | ToHour | NextDay
    ---+----------+--------+-------
    1  | 00:30    | 01:30  | 0
    2  | 01:30    | 02:30  | 0
    <snip>
    24 | 23:30    | 00:30  | 1
    
    select date(date) aDate, ID ,date, bidOpen, max(bidHigh),min(bidLow)
    from data inner join timeslice
        ON date >= CONCAT(date(Date),' ',FromHour) 
        and date < concat(date(DATEADD(day,NextDay,date),' ',ToHour)
    group by aDate, ID
    


    1. MySQLデータベースのタイムゾーンをGMTに設定します

    2. データベースを削除できません

    3. SQLスクリプトを実行して、テーブルと行を作成します

    4. mysqlデータベースが存在するかどうかを確認し、結果に基づいてアクションを実行します