Consulta MySQL para atualizar registros com data incrementada
estou tentando
obter a data mais recente em um banco de dados ecom base nessa data atualizar todos os registros que tem umNULL
data, aumentando a data em 1 dia.Eu posso obter a data mais recente usando oÚltima data consulta abaixo. Eu preciso fazer isso primeiro porque as datas na tabela sãonão em ordem. Se necessário, posso executar essa consulta, anotá-la manualmente e executar aUPDATE
consulta com base nessa data. Eu preferiria executar tudo sem o processo manual.
A última consulta que tenho na parte inferior da questão é minhaconsulta de teste por tentar atualizar as datas, no entanto, eu não tive sorte em fazê-lo funcionar.
Tabela (datas não estão em ordem)
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
Selecionando a data mais recente (ponto de partida paraUPDATE
)
SELECT date
FROM my_table
ORDER BY date DESC
LIMIT 1
AtualizandoNULL
datas (não funciona)
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
Como posso fazer isso? ou isto nao e possivel?