0

こんにちは皆さん、私はSQLに本当に慣れていないので、これについては優しくしてください。過去 2 週間以内に created_at または updated_at されたすべてのレコードを取得するクエリを実行しようとしています。

私はこれでいくつかの読書をしました

SELECT * FROM sms_development.scores WHERE DATE(created_at) = CURDATE() - INTERVAL 14 DAY AND CURDATE() OR DATE(updated_at) = CURDATE() - INTERVAL 14 DAY AND CURDATE();

これは本当に巨大に見えるし、全然乾いてない。そして、何らかの理由で機能しません。それをMySQLワークベンチに入力すると、青信号が表示されますが、文法的なエラーか何かを犯したかどうかはわかりません。しかし、レコードはプルされません。

役立つアドバイスやテクニックは大歓迎です

4

1 に答える 1

0

これは、Rails finder を使用してできる限り行う必要があります。少なくとも部分的には他のデータ ストレージ エンジンに移植できるので、たとえば SQLite から Postgres に切り替えたとしても、コードを (それほど) 書き直す必要はありません。

私はこれを次のようにします:

Score.where('created_at > ? OR updated_at > ?', DateTime.now - 2.weeks, DateTime.now - 2.weeks).all
于 2012-07-19T15:36:12.890 に答える