私は。。をしようとしています
- データベースの最新の日付を取得し、
- その日付に基づいて、日付を持つすべてのレコードを更新し
NULL
、日付を 1 日増やします。
以下の最新の日付クエリを使用して、最新の日付を取得できます。テーブルの日付が順番になっていないため、最初にこれを行う必要があります。必要に応じて、このクエリを実行し、手動で書き留めてから、UPDATE
この日付に基づいてクエリを実行できます。手動プロセスなしですべてを実行したいと思います。
質問の最後にある最後のクエリは、日付を更新しようとするテストクエリですが、うまく機能しませんでした。
表(日付順不同)
id date
----- ----------
10500 2013-08-18
10501 2013-08-16
10502 2013-08-17
10503 2013-08-19
10504 NULL
10505 NULL
...
11800 NULL
11801 NULL
最新の日付を選択する( の開始点UPDATE
)
SELECT date
FROM my_table
ORDER BY date DESC
LIMIT 1
NULL
日付の更新(動作しません)
UPDATE my_table
SET date = DATE_ADD((SELECT date FROM my_table ORDER BY date DESC LIMIT 1), INTERVAL 1 DAY)
WHERE date IS NULL
ORDER BY id ASC
どうすればこれを達成できますか? それとも、これは不可能ですか?