2010-07-05 11 views
6

Ich versuche CONCAT mit SQL zu verwenden, 3 Felder verketten, und die folgende Fehlermeldung erhalten:Wie verkettet man mehr als 2 Felder mit SQL?

Falsche Parameter im Aufruf von nativen Funktion ‚CONCAT‘

Die Abfrage wird wie folgt

SELECT CONCAT(guests.lastname,', ',guests.firstname', ',guests.passport) AS display 
    FROM guests 
WHERE guests.uuid = '1' 

Wie verketten Sie mehr als 2 Felder in SQL?

Antwort

20

Sie müssen Kommas zwischen alle Argumente setzen.

Wechsel:

SELECT CONCAT(guests.lastname,', ',guests.firstname', ',guests.passport) 

zu:

SELECT CONCAT(guests.lastname,', ',guests.firstname,', ',guests.passport) 
                ^
+0

+1: Sie waren zuerst –

+0

ich gefunden habe, dass Lehre akzeptiert nur zwei Argumente für die Funktion CONCAT. http://www.doctrine-project.org/jira/browse/DDC-670 Nicht ein einfacher Syntaxfehler in meinem Fall. Arbeiten Sie herum, indem Sie es wie folgt ausdrücken: 'CONCAT (a, CONCAT (b, CONCAT (c, d)))' – ficuscr

0
SELECT CONCAT(guests.lastname,concat(', ',concat(guests.firstname,concat(', ',guests.passport)))); 
Verwandte Themen