Maison > base de données > tutoriel mysql > Pourquoi ma requête MySQL UPDATE INNER JOIN échoue-t-elle et comment puis-je y remédier ?

Pourquoi ma requête MySQL UPDATE INNER JOIN échoue-t-elle et comment puis-je y remédier ?

Patricia Arquette
Libérer: 2024-12-06 14:16:11
original
556 Les gens l'ont consulté

Why is My MySQL UPDATE INNER JOIN Query Failing, and How Can I Fix It?

Dépannage de la requête de jointure interne de mise à jour MySQL

Un problème est survenu lors de la tentative d'exécution de la requête de mise à jour MySQL suivante :

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
Copier après la connexion

L'erreur indique un problème de compilation, mais tous les noms de champs semblent être valide.

Solutions possibles

Après analyse, il est suggéré que le problème peut résider dans l'utilisation incorrecte des alias de table. Essayez de modifier la requête comme suit :

UPDATE business AS b
INNER JOIN business_geocode AS g ON b.business_id = g.business_id
SET b.mapx = g.latitude,
  b.mapy = g.longitude
WHERE  (b.mapx = '' or b.mapx = 0) and
  g.latitude > 0
Copier après la connexion

Dans cette requête révisée, les alias de table sont explicitement spécifiés pour garantir un référencement correct des champs de table.

Dépannage supplémentaire

Si la requête révisée produit également une erreur, il peut être avantageux de créer des tables temporaires pour valider la structure de la requête sans altérer les tables d'origine. Cela peut aider à identifier tout problème potentiel de syntaxe ou de structure.

De plus, il est recommandé de consulter la documentation MySQL pour les messages d'erreur spécifiques liés à la requête de mise à jour. Cela peut fournir des informations supplémentaires sur la cause profonde du problème.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal