Maison > base de données > tutoriel mysql > Pourquoi ma requête SQL affiche-t-elle une erreur « Colonne inconnue dans la clause Where » ?

Pourquoi ma requête SQL affiche-t-elle une erreur « Colonne inconnue dans la clause Where » ?

Patricia Arquette
Libérer: 2025-01-17 16:02:10
original
568 Les gens l'ont consulté

Why Does My SQL Query Show an

Dépannage de l'erreur « Colonne inconnue » dans les clauses SQL WHERE

La redoutable erreur « Colonne inconnue dans la clause Where » affecte fréquemment les requêtes SQL. Cette erreur se produit lorsque votre instruction SQL fait référence à un nom de colonne dans la clause WHERE que le système de base de données ne peut pas trouver.

Examinons un scénario typique :

<code class="language-sql">SELECT u_name AS user_name FROM users WHERE user_name = "john";</code>
Copier après la connexion

Cette requête vise à récupérer le u_name de la table users, alias user_name, où le user_name est "john". Cependant, cela génère souvent l'erreur « Colonne inconnue 'nom_utilisateur' dans la clause Where ».

La cause première est l'ordre de traitement de SQL : il évalue la clause WHERE avant la clause SELECT. Par conséquent, lorsque la base de données atteint la clause WHERE, l'alias user_name n'a pas encore été défini.

La solution ? Assurez-vous que les alias utilisés dans la clause WHERE sont définis avant d'être référencés. Utilisez simplement le nom de la colonne d'origine dans la clause WHERE :

<code class="language-sql">SELECT u_name AS user_name FROM users WHERE u_name = "john";</code>
Copier après la connexion

Cette requête révisée permet à la base de données d'identifier correctement u_name puis d'appliquer l'alias user_name pendant la phase SELECT, évitant ainsi l'erreur. L'alias est utilisé uniquement pour la sortie, pas pour le filtrage.

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