La concaténation de chaîne dans MySQL
Je suis de l'utilisation de MySQL et MySQL Workbench 5.2 EC. Lorsque j'essaie de concaténer 2 colonnes, last_name
et first_name
, il ne fonctionne pas :
select first_name + last_name as "Name" from test.student
- Cette question montre absolument aucun effort de recherche. La prochaine fois, Google à vos questions avant de les poser ici.
- Je ne me soucie pas d'efforts de recherche, lol. stackoverflow devient mon meilleur résultat dans google pour ce type de question, et c'est l'endroit pour découvrir les réponses 🙂
Vous devez vous connecter pour publier un commentaire.
MySQL est différent de la plupart des Sgbd utilisation de
+
ou||
pour la concaténation. Il utilise leCONCAT
fonction:Comme @eggyal souligné dans les commentaires, vous pouvez activer la concaténation de chaîne avec la
||
opérateur dans MySQL par réglage de laPIPES_AS_CONCAT
mode SQL.||
pour la concaténation de chaîne, lors de laPIPES_AS_CONCAT
SQL-mode est activé.Doctrine
, j'ai dû utiliser des guillemets simples pour l'espace dansCONCAT
, et des guillemets autour de l'ensemble de la requête.PIPES_AS_CONCAT
:SET @@SQL_MODE = CONCAT(@@SQL_MODE, ',PIPES_AS_CONCAT');
. Pour désactiver:SET @@SQL_MODE = REPLACE(@@SQL_MODE, 'PIPES_AS_CONCAT', '');
. Plus d'exemples sur mariadb.com/kb/en/library/sql-mode/#examplesEssayer:
ou, mieux:
Utilisation concat() fonction au lieu de
+
comme ceci:Ce n'est pas la façon de concat dans MYSQL. Utilisez la fonction CONCAT Ont un coup d'oeil ici: http://dev.mysql.com/doc/refman/4.1/en/string-functions.html#function_concat