Maison >développement back-end >tutoriel php >Comment résoudre les noms de colonnes ambigus dans les jeux de résultats SQL ?
Résolution des noms de colonnes ambigus lors de la récupération des résultats
Des noms de colonnes ambigus peuvent survenir lors de la récupération de résultats à partir de tables avec des noms de colonnes identiques. Considérons le scénario suivant dans lequel nous avons deux tables, NEWS et USERS, avec des noms de colonnes communs :
NEWS Table :
UTILISATEURS Table :
Requête SQL :
Pour récupérer les données de ces tables, nous exécutons la requête SQL suivante :
SELECT * FROM news JOIN users ON news.user = user.id
Désiré Résultat :
Nous souhaitons obtenir l'identifiant de l'actualité et l'identifiant de l'utilisateur à partir du résultat. Cependant, les récupérer à l'aide de $row['column-name'] entraînerait une ambiguïté en raison du nom de la colonne partagée.
Solution :
Pour résoudre cette ambiguïté, nous pouvons attribuer des alias aux colonnes à l'aide du mot-clé "AS":
SELECT news.id AS newsId, user.id AS userId, [OTHER FIELDS HERE] FROM news JOIN users ON news.user = user.id
Désormais, lors de l'accès aux résultats en PHP, nous pouvons récupérez l'ID d'actualité sous la forme $row['newsId'] et l'ID utilisateur sous la forme $row['userId'].
En aliasant les colonnes de cette manière, nous garantissons que les données récupérées sont identifiables de manière unique, ce qui les rend facile à utiliser dans votre application PHP.
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!