concat_ws

Mattepuffo's logo
Concatenare campi in MySQL

Concatenare campi in MySQL

In MySQL è molto facile concatenare più campi.

In genere l'SQL prevede l'uso di || che equivale a OR, ma questo funziona solo è attivato l’SQL MODE PIPES_AS_CONCAT.

Nel caso non fosse attivato otterremo un risultato strano:

mysql> SELECT author_name||"-"||editor_name AS CONC FROM bookv LIMIT 5;
+------+
| CONC |
+------+
|    0 |
|    0 |
|    0 |
|    0 |
|    0 |
+------+

Per ovviare si possono usare le funzioni CONCAT()  e CONCAT_WS().

Ovviamente posiamo concatenare campi di diverso tipo, come un VARCHAR e un DECIMAL.

La sintassi base è:

SELECT CONCAT(campo1, campo2, campo3, ....);

Ovviamente possiamo mettere anche stringhe di separazione.