it-swarm-ja.tech

MySQL SELECTはここ数日ですか?

私はMYSQLで遊んでいて、一定量の結果を表示する制限コマンドがあることを知っていますが、MySQLだけでは過去3日間しか表示できないのではないかと思っていました。ただ疑問に思う。

更新: NOW()を使用して時間を保存しました。

62
Strawberry

3日前の日付に使用:

WHERE t.date >= DATE_ADD(CURDATE(), INTERVAL -3 DAY);

DATE_ADD のドキュメントを確認してください。

または、次を使用できます。

WHERE t.date >= ( CURDATE() - INTERVAL 3 DAY )
134
OMG Ponies

これをMySQL WHERE句で使用して、過去7日間/週以内に作成されたレコードを返すことができます。

created >= DATE_SUB(CURDATE(),INTERVAL 7 day)

また、減算でNOW()を使用して、hh:mm:ss解像度を指定します。過去24時間以内に正確に(2番目に)作成されたレコードを返すには、次のようにします。

created >= DATE_SUB(NOW(),INTERVAL 1 day)

12
PythonDev

これを行うには、UNIX_TIMESTAMP()関数の組み合わせを使用できます。

SELECT ... FROM ... WHERE UNIX_TIMESTAMP() - UNIX_TIMESTAMP(thefield) < 259200
2
Turnor