私はプログラマーではなく、単なる学習者です。私は何かを試しています。 私は3つのカラムid、date、statusを持つテーブル、つまりtest1を持っています。このSQLクエリを書くには?
私は10日齢あるとパスとしてのステータスを持っているか、良いに失敗していないか、どれも IDのステータスを変更したいです。
私はプログラマーではなく、単なる学習者です。私は何かを試しています。 私は3つのカラムid、date、statusを持つテーブル、つまりtest1を持っています。このSQLクエリを書くには?
私は10日齢あるとパスとしてのステータスを持っているか、良いに失敗していないか、どれも IDのステータスを変更したいです。
要件が不明です。
これはパスレコードを調べ、日付が10日以上経過すると失敗するように設定します。
update test1
set status = 'fail'
where status = 'pass'
and date < dateadd(d,-10, getdate())
RDBMSを指定していないので、私はMySQLとSQL Serverの回答を提供します。あなたの要求に関する多くの詳細を提供しなかったが、あなたは、MySQLで、次の操作を行うことができます。ここでは
UPDATE test1
SET status = 'good'
where date < DATE_ADD(now(), interval -10 day)
AND status IN ('pass', 'fail', 'none');
は、実施例とsql fiddleです。
は、SQL Serverでは、クエリは次のようになります。 ここUPDATE test1
SET status = 'good'
where date < DateAdd(day, -10, getdate())
AND status IN ('pass', 'fail', 'none');
はその一例でsql fiddleです。
日付と時刻の両方を格納しています。構造体には、その関数が使用されるdatetimeがありますか? –
datetimeを同じフィールドに格納する場合、同じ関数が使用されます。 – Taryn