MYSQL Instruction de mise à Jour les Tables de Jointure Interne
Je n'ai aucune idée de ce qu'est le problème. L'utilisation de MySQL 5.0, je reçois un message d'erreur de compilation lorsque vous tentez d'exécuter la suite de MYSQL instruction de mise à jour
UPDATE b
SET b.mapx = g.latitude,
b.mapy = g.longitude
FROM business AS b
INNER JOIN business_geocode g ON b.business_id = g.business_id
WHERE (b.mapx = '' or b.mapx = 0) and
g.latitude > 0
tous les noms de champ sont corrects. Toutes les pensées?
- j'ai même retiré de l'alias, quand je l'ai changer pour une sélection de b.* DE l'entreprise b inner join il fonctionne
Vous devez vous connecter pour publier un commentaire.
Essayez ceci:
Mise à jour:
Puisque vous avez dit que la requête a abouti à une erreur de syntaxe, j'ai créé quelques tableaux que j'ai pu tester et a confirmé qu'il n'y a pas d'erreur de syntaxe de ma requête:
Voir? Pas d'erreur de syntaxe. J'ai testé contre MySQL 5.5.8.
show create table business;
etshow create table business_geocode;
afin que je puisse tester ma requête est un peu mieux. Merci.INNER JOIN business_geocode AS g
AS
mot clé est facultatif. Mais puisque vous l'avez signalé, je l'ai ajouté à la réponse par souci de cohérence, depuis que j'ai fait sur le premier alias dans la même requête.La
SET
clause devrait venir après la table de spécification.Pour MySql WorkBench, Veuillez utiliser ci-dessous :