Ich verwende MySQL und MySQL Workbench 5.2 CE. Wenn ich versuche , 2 Spalten zu verketten, last_name
und first_name
es funktioniert nicht:
select first_name + last_name as "Name" from test.student
mysql
mysql-workbench
concat
Roshan
quelle
quelle
Antworten:
MySQL unterscheidet sich von den meisten DBMS, die
+
oder||
für die Verkettung verwenden. Es verwendet dieCONCAT
Funktion:Wie @eggyal in den Kommentaren hervorhob, können Sie die Verkettung von Zeichenfolgen mit dem
||
Operator in MySQL aktivieren, indem Sie denPIPES_AS_CONCAT
SQL-Modus festlegen .quelle
||
für String - Verkettung, wenn derPIPES_AS_CONCAT
SQL - Modus aktiviert ist.Doctrine
, die verwenden , musste ich einfache Anführungszeichen für den Platz inCONCAT
und doppelte Anführungszeichen für die gesamte Abfrage verwenden.PIPES_AS_CONCAT
:SET @@SQL_MODE = CONCAT(@@SQL_MODE, ',PIPES_AS_CONCAT');
. Zum Deaktivieren :SET @@SQL_MODE = REPLACE(@@SQL_MODE, 'PIPES_AS_CONCAT', '');
. Weitere Beispiele unter mariadb.com/kb/en/library/sql-mode/#examplesVersuchen:
oder besser:
quelle
Verwenden Sie stattdessen die Funktion concat ()
+
wie folgt :quelle
Das ist nicht der Weg, um sich in MYSQL zu konzentrieren. Verwenden Sie die CONCAT-Funktion. Schauen Sie hier: http://dev.mysql.com/doc/refman/4.1/en/string-functions.html#function_concat
quelle