Maison >base de données >tutoriel mysql >Pourquoi ma fonction CONCAT renvoie-t-elle une erreur « nombre d'arguments invalide » ?

Pourquoi ma fonction CONCAT renvoie-t-elle une erreur « nombre d'arguments invalide » ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-29 20:07:15488parcourir

Why is my CONCAT function returning an

Dépannage "La fonction Concat ne fonctionne pas - nombre d'arguments non valide" Erreur

Lorsque vous essayez de concaténer plusieurs valeurs à l'aide de la fonction CONCAT, vous peut rencontrer l'erreur "nombre d'arguments invalide". Cela se produit généralement en raison de deux erreurs courantes :

  1. Délimiteurs de chaîne incorrects :
    Assurez-vous d'utiliser des guillemets simples (') pour envelopper les chaînes. Dans votre code, les guillemets doubles (") autour de l'expression de sous-chaîne sont incorrects.

    SELECT CONCAT(Name, '('  || SUBSTR(Occupation,1,1) || ')') FROM OCCUPATIONS;
  2. Nombre d'arguments dépassant :
    La fonction CONCAT accepte un maximum de deux paramètres. Toute tentative de transmettre plus de deux arguments entraînera l'erreur. Pour concaténer plusieurs valeurs, vous pouvez soit imbriquer plusieurs fonctions CONCAT, soit utiliser l'option. opérateur de concaténation (||).

    -- Using nested CONCAT
    SELECT CONCAT(CONCAT(Name, '('), SUBSTR(Occupation,1,1), ')') FROM OCCUPATIONS;
    
    -- Using concatenation operator
    SELECT Name || '('  || SUBSTR(Occupation,1,1) || ')' FROM OCCUPATIONS;

Solution corrigée :

Le code corrigé utilisant l'opérateur de concaténation :

SELECT Name || '('  || SUBSTR(Occupation,1,1) || ')' FROM OCCUPATIONS;

Ce code concatènera les colonnes Nom et Occupation dans le format requis et affichera les résultats sans aucune erreur.

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:
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