Hier sind zwei Möglichkeiten, Strings und Zahlen in MariaDB zu verketten:
- Verwenden Sie den
CONCAT()
Funktion, die ihre Argumente verkettet. - Verwenden Sie den Pipe-Verkettungsoperator (
||
), die ihre Operanden verkettet.
Nachfolgend finden Sie jeweils Beispiele.
Der CONCAT()
Funktion
Der CONCAT()
Funktion verkettet ihre Argumente. Obwohl dies eine Zeichenfolgenfunktion ist, kann sie numerische (und binäre Zeichenfolgen-)Argumente verarbeiten. Jeder numerische Wert wird in seine äquivalente binäre Zeichenfolgenform umgewandelt (im Gegensatz zu MySQL, das eine nichtbinäre Zeichenfolge zurückgibt).
Beispiel:
SELECT CONCAT('Agent', 47);
Ergebnis:
Agent47
Leerzeichen können hinzugefügt werden, entweder durch Hinzufügen des Leerzeichens zu der vorhandenen Zeichenfolge oder durch Verketten mit einem dritten Argument, das nur aus einem Leerzeichen besteht:
SELECT
CONCAT('Agent ', 47) AS "Option 1",
CONCAT('Agent', ' ', 47) AS "Option 2";
Ergebnis:
+----------+----------+ | Option 1 | Option 2 | +----------+----------+ | Agent 47 | Agent 47 | +----------+----------+
Wenn Sie nicht möchten, dass der numerische Wert in seine äquivalente binäre Zeichenfolgenform konvertiert wird, können Sie ihn explizit vor der Verkettungsoperation umwandeln.
Beispiel:
SELECT CONCAT('Agent', CAST(47 AS char));
Ergebnis:
Agent47
Der Pipe-Verkettungsoperator (||
)
Dieses Beispiel verwendet den Verkettungsoperator (||
):
SELECT 'Agent ' || 47;
Ergebnis:
Agent 47
In diesem Fall habe ich ein Leerzeichen an das erste Argument angehängt.
Beachten Sie, dass der Pipe-Verkettungsoperator zuerst aktiviert werden muss, bevor Sie ihn auf diese Weise verwenden können. Standardmäßig behandelt MariaDB ||
als Synonym für das OR
logischer Operator. Der Versuch, ihn als Verkettungsoperator zu verwenden, kann zu unerwarteten Ergebnissen führen, wenn Sie ihn nicht zuerst als Pipe-Verkettungsoperator aktivieren.