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

MySQLはcurrent_timestampで先月のデータを選択します

    これで先月が表示されます:

    WHERE dateColumn BETWEEN SUBDATE(CURDATE(), INTERVAL 1 MONTH) AND NOW();
    

    これは月の初めから:

    WHERE dateColumn BETWEEN STR_TO_DATE('2012-09-01', '%Y-%m-%d') AND NOW();
    

    BETWEENは特別なものではなく、単なるショートカットです

    dateColumn <= ... AND dateColumn >= ....
    

    うーん、すべてのレコードが今より前にあるので、NOW()の比較は実際には必要ないと思います。

    だから、ただやってください:

    WHERE dateColumn >= STR_TO_DATE('2012-09-01', '%Y-%m-%d')
    

    今月の動的開始:

    WHERE dateColumn >= CURDATE() - INTERVAL DAY(CURDATE())-1 DAY
    

    これは、現在の日付からその月の日を抽出し、その日から1日を引いた日を引くだけです。



    1. mysqlからHbaseへの継続的なデータ移行

    2. 単一のSQLServerステートメントはアトミックで一貫性がありますか?

    3. C#.NETmd5とは異なるTSQLmd5ハッシュ

    4. Ubuntu16.04にPostgreSQL10をインストールして接続します