Sto usando MySQL e MySQL Workbench 5.2 CE. Quando provo a concatenare 2 colonne last_name
e first_name
non funziona:
select first_name + last_name as "Name" from test.student
Sto usando MySQL e MySQL Workbench 5.2 CE. Quando provo a concatenare 2 colonne last_name
e first_name
non funziona:
select first_name + last_name as "Name" from test.student
Risposte:
MySQL è diverso dall'uso della maggior parte dei DBMS +
o ||
per la concatenazione. Utilizza la CONCAT
funzione:
SELECT CONCAT(first_name, " ", last_name) AS Name FROM test.student
Come sottolineato da @eggyal nei commenti, è possibile abilitare la concatenazione di stringhe con l' ||
operatore in MySQL impostando la PIPES_AS_CONCAT
modalità SQL.
||
per la concatenazione di stringhe, quando la PIPES_AS_CONCAT
modalità di SQL è abilitata.
Doctrine
, ho dovuto usare virgolette singole per lo spazio CONCAT
e doppie virgolette attorno all'intera query.
PIPES_AS_CONCAT
: SET @@SQL_MODE = CONCAT(@@SQL_MODE, ',PIPES_AS_CONCAT');
. Per disinserire: SET @@SQL_MODE = REPLACE(@@SQL_MODE, 'PIPES_AS_CONCAT', '');
. Altri esempi su mariadb.com/kb/en/library/sql-mode/#examples
Non è questo il modo di concatenare in MYSQL. Utilizzare la funzione CONCAT Dai un'occhiata qui: http://dev.mysql.com/doc/refman/4.1/en/string-functions.html#function_concat