J'ai la requête suivante:Comment puis-je joindre des tables sur une mise à jour
select count(L.ID)
from LA inner join L on (LA.leadid = L.ID)
where L.status = 5
and L.city = "cityname"
and Date(LA.Datetime) < Date_Sub(Now(), INTERVAL 6 MONTH);
qui cherche des documents ayant un statut 5 dans une ville qui sont plus de 6 mois (la date à laquelle est stockée dans LA). Cela renvoie environ 4k résultats. Je voudrais mettre à jour la valeur de l'état à 1 sur chacun de ces dossiers, et donc ma mise à jour ressemble à:
update L, LA
set L.status = 1
where L.status = 5
and L.city = "cityname"
and Date(LA.SomeDatetime) < Date_Sub(Now(), INTERVAL 6 MONTH);
mais les stalles et des serrures db. Je pense qu'il ya un problème parce qu'il n'y a pas de rejoindre, mais je tente quelque chose comme:
update L, LA
from L inner join LA on (L.OID = LA.leadid)
set L.status = 1
where L.status = 5
and L.syscity = "cityname"
and Date(LA.SomeDatetime) < Date_Sub(Now(), INTERVAL 6 MONTH);
et évidemment ne fonctionnera pas parce qu'il n'y a pas « de » dans une mise à jour.
modifier> J'utilise MySQL
Qu'est-ce que DB utilisez-vous? – geofftnz