Requête avec des alias
Dans MySQL, vous pouvez attribuer des alias à des champs ou des colonnes à simplifiez vos requêtes. Cela vous permet d'utiliser l'alias au lieu du nom du champ d'origine, ce qui rend la requête plus facile à lire et à comprendre.
SELECT field1 + field2 AS col1 FROM core;
Cet exemple crée un alias, col1, pour représenter la somme de field1 et field2.
Erreur d'aliasing
Cependant, dans votre cas, vous rencontrez une "erreur de colonne inconnue" lorsque vous essayez d'utiliser l'alias dans un calcul ultérieur. Cette erreur se produit car l'alias n'est pas défini tant que la première requête n'est pas exécutée.
Solution : Utiliser une variable utilisateur comme alias
Pour surmonter cette limitation, MySQL fournit à l'utilisateur variables qui peuvent être utilisées comme alternatives d’alias. Vous pouvez attribuer une variable utilisateur à une sous-requête puis la référencer dans la requête principale.
SELECT @code := SUM(field1 + field2), @code + 1 FROM abc;
Dans ce cas, @code est affecté à la somme de field1 et field2, puis à l'expression @code 1 est calculé dans la même requête.
Attention
Bien que cette technique vous permette d'obtenir le résultat souhaité, il est important d'être conscient des pièges potentiels. La documentation de MySQL déconseille d'attribuer une valeur à une variable utilisateur et de la lire dans la même instruction. Cependant, si elle est utilisée avec prudence, cette solution peut constituer une solution de contournement précieuse aux limitations des alias.
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!