Maison > base de données > tutoriel mysql > Comment résoudre l'ambiguïté « user_id » dans la clause MySQL WHERE ?

Comment résoudre l'ambiguïté « user_id » dans la clause MySQL WHERE ?

Barbara Streisand
Libérer: 2024-11-11 06:05:03
original
599 Les gens l'ont consulté

How to Resolve

'user_id' ambigu dans MySQL WHERE Clause

Lors de l'interrogation d'une base de données avec plusieurs tables partageant des noms de colonnes communs, il est crucial de spécifier explicitement à quelle colonne de table vous faites référence dans la clause WHERE. Cette ambiguïté survient lorsque des tables comme « user » et « user_info » ont un nom de colonne partagé, tel que « user_id ».

Le problème

La requête ci-dessous tente de rejoindre les tables 'user' et 'user_info', mais cela entraîne l'erreur "'user_id' dans la clause Where ambiguous":

SELECT user.*, user_info.*
FROM user
INNER JOIN user_info ON user.user_id = user_info.user_id
WHERE user_id=1
Copier après la connexion

La solution

Pour résoudre cette ambiguïté, vous devez spécifier la colonne 'user_id' de la table que vous comparez à la valeur 1. Ceci se fait en préfixant le nom de la colonne avec l'alias de la table :

SELECT user.*, user_info.*
FROM user
INNER JOIN user_info ON user.user_id = user_info.user_id
WHERE user.user_id=1
Copier après la connexion

En spécifiant explicitement 'user.user_id', vous informez la base de données qu'il s'agit de la colonne sur laquelle vous souhaitez filtrer, et non de la colonne 'user_id' de la table 'user_info'. Cela élimine l'ambiguïté et permet à la requête de s'exécuter avec succès.

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!

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