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

今から過去30日以内の各日付の最新時刻の行を選択する方法

    group byできます 日時の日付部分で、毎日の最大値を取得します。

    select max(`datetime`) 
    from tablename
    where `datetime` >= date(now())-interval '30' day
    group by date(`datetime`)
    

    そのような行のテーブルからすべてのフィールドを取得するには、

    を使用します
    select * from tablename where `datetime` in (
    select max(`datetime`) 
    from tablename
    where `datetime` >= date(now())-interval '30' day
    group by date(`datetime`)
    )
    


    1. テーブルに新しいフィールドを作成するか、2番目のテーブルのMAXを選択する必要があります

    2. mysql_escape_stringが非常に推奨されないのはなぜですか?

    3. MySQL 4.1.x + Connector/Jを使用した大規模な結果セットのストリーミング

    4. Mysqlテーブル名が大文字で機能しない