2009-09-08 8 views
0

tableau 1 (ob): nom, adressetable SQL problème de mise à jour

tableau 2 (adresse): dname, adr

je dois mettre à jour ob.address avec address.addr quand ob.name=address.dname. Quelqu'un peut-il aider à obtenir de meilleurs résultats parce que j'utilise la commande suivante qui conduit à l'arrêt du système.

UPDATE ob GAUCHE JOIN adresse ON nom_objet = adresse.dname SET ob.address = adresse.addr;

Répondre

2

Cela devrait le faire:

update ob 
set address = address_table.addr 
where ob.name = address_table.dname 

EDIT: Conseil: utiliser un meilleur nom pour le tableau 2 de l'adresse. Peut-être que TBL_ADDRESS? Dans mon exemple ci-dessus j'ai utilisé address_table.

+0

devrait être address.addr au lieu de table2.address (un nom plus distinct aiderait beaucoup l'OP ici). –

+0

oui, juste remarqué les mauvaises conventions de nommage utilisées pour les tables et les champs dans la question :). Modifié. – waqasahmed

0
UPDATE ob 
SET ob.address = address.addr 
WHERE ob.name = address.dname 
Questions connexes