Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Algo assim:
UPDATE tbl_usuarios SET data_liberada = ADDDATE(data_liberada, 30), qtde_prova = '0'
WHERE id_user =
(SELECT DISTINCT n.id_aluno as id_user FROM tbl_notas n, tbl_usuarios u
WHERE n.id_aluno = u.id_user AND
n.id_agenda = '1' AND
u.qtde_prova = '2')
ERRO:
#1093 - You can't specify target table 'tbl_usuarios' for update in FROM clause
LEMBRANDO que separadamente essas querys estão validadas.
Alguém pode dar uma luz ?
>
Tenta fazer dessa forma...
UPDATE tbl_usuarios u,
(
SELECT DISTINCT n.id_aluno as id_user FROM tbl_notas n, tbl_usuarios u WHERE n.id_aluno = u.id_user AND n.id_agenda = '1' AND u.qtde_prova = '2'
) as tabela_ficticia
SET data_liberada = ADDDATE(data_liberada, 30), qtde_prova = '0'
WHERE id_user = tabela_ficticia.id_user
Aprendi essa a alguns dias tentando ajudar outra pessoa aqui no fórum, to aprendendo muito aqui! (Mas isso não quer dizer que vá funcionar corretamente, hehe)
Valeu cara. Depois da direção o resultado ficou assim:
UPDATE tbl_usuarios,
(SELECT DISTINCT n.id_aluno FROM tbl_notas n, tbl_usuarios u
WHERE
n.id_aluno = u.id_user AND
n.id_agenda = '1' AND
u.qtde_prova = '2')
as ID
SET data_liberada = ADDDATE(data_liberada, 30),
qtde_prova = '0' WHERE id_user = ID.id_aluno
SHOW DE BOLA.
Tenta fazer dessa forma...
SET data_liberada = ADDDATE(data_liberada, 30), qtde_prova = '0' WHERE id_user = tabela_ficticia.id_user Aprendi essa a alguns dias tentando ajudar outra pessoa aqui no fórum, to aprendendo muito aqui! (Mas isso não quer dizer que vá funcionar corretamente, hehe)