web-dev-qa-db-fra.com

Opérateur de concaténation MySQL

Je ne connais pas d'opérateur de concaténation pour MySQL.

J'ai essayé ce code pour la concaténation:

SELECT vend_name || ' (' || vend_country || ')'
FROM Vendors
ORDER BY vend_name;

Mais ça n'a pas marché. Quel opérateur dois-je utiliser pour concaténer des chaînes?

32
user2201462

Vous utilisiez le type de concaténation Oracle. MySQL devrait être 

 SELECT CONCAT(vend_name, '(', vend_country, ')')

Appelez la fonction CONCAT() et séparez vos valeurs par des virgules.

38
codingbiz

|| est l'opérateur de concaténation de chaîne ANSI standard, pris en charge par la plupart des bases de données (notamment not MS SQL Server ). MySQL le supporte aussi, mais vous devez d'abord SET sql_mode='PIPES_AS_CONCAT'; .

54
200_success

La fonction MySQL CONCAT est utilisée pour concaténer deux chaînes afin de former une seule chaîne. Essayez l'exemple suivant:

mysql> SELECT CONCAT('FIRST ', 'SECOND');
+----------------------------+
| CONCAT('FIRST ', 'SECOND') |
+----------------------------+
| FIRST SECOND               |
+----------------------------+
1 row in set (0.00 sec)

Pour mieux comprendre la fonction CONCAT, considérons une table employee_tbl contenant les enregistrements suivants:

mysql> SELECT CONCAT(id, name, work_date)
    -> FROM employee_tbl;
+-----------------------------+
| CONCAT(id, name, work_date) |
+-----------------------------+
| 1John2007-01-24             |
| 2Ram2007-05-27              |
| 3Jack2007-05-06             |
| 3Jack2007-04-06             |
| 4Jill2007-04-06             |
| 5Zara2007-06-06             |
| 5Zara2007-02-06             |
+-----------------------------+
13
Akshay Joy

Vous pouvez simplement utiliser le mot clé CONCAT pour concaténer les chaînes .. Vous pouvez l'utiliser comme

SELECT CONCAT(vend_name,'',vend_country) FROM vendors ORER BY name;
0
Anil Chaurasiya

Ce qui est bien dans l'utilisation de concat est que vous pouvez transmettre différentes colonnes de type de données et des représentations de chaîne de concaténation

 SELECT concat('XXX',  10.99, 'YYY', 3, 'ZZZ', now(3)) as a; 

Sortie

une
-----
XXX10.99YYY3ZZZ2018-09-21 15: 20: 25.106

0
T.S.