Ich versuche einen Weg zu finden, um zwei Spalten zu einer zu kombinieren, aber erhalte weiterhin den Wert '0' in der Spalte anstelle der Kombination der Wörter.
Folgendes habe ich ebenso versucht wie andere:
SELECT column1 + column2 AS column3
FROM table;
SELECT column1 || column2 AS column3
FROM table;
SELECT column1 + ' ' + column2 AS column3
FROM table;
Könnte jemand mich bitte wissen lassen, was ich falsch mache?
Antworten:
Ich vermute, dass Sie MySQL verwenden, wo der
+
Operator zusätzlich zur stillen Konvertierung der Werte in Zahlen addiert. Wenn ein Wert nicht mit einer Ziffer beginnt, lautet der konvertierte Wert0
.Versuchen Sie Folgendes:
Zwei Möglichkeiten, ein Leerzeichen hinzuzufügen:
quelle
sql server 2005
und es gibt mir Fehler alsIncorrect syntax near ')'.
Versuchen Sie dies, es funktioniert für mich
quelle
Es ist Arbeit für mich
quelle
Dies ist die einzige Lösung, die für mich funktionieren würde, wenn ich ein Leerzeichen zwischen den zusammengeführten Spalten benötige.
quelle
Für die MySQL-Fans da draußen gefällt mir die
IFNULL()
Funktion. Andere Antworten hier schlagen eine ähnliche Funktionalität mit derISNULL()
Funktion in einigen Implementierungen vor. In meiner Situation habe ich eine Spalte mit BeschreibungenNOT NULL
und eine Spalte mit Seriennummern.NULL
So habe ich sie in einer Spalte zusammengefasst:Meine Ergebnisse legen nahe, dass die Ergebnisse der Verkettung einer Zeichenfolge mit den
NULL
Ergebnissen in aNULL
. In diesen Fällen habe ich den alternativen Wert erhalten.quelle
Wenn Sie daran arbeiten,
Oracle
dann:ODER
Wenn Sie an MySQL arbeiten, dann:
quelle
Ich habe diesen Weg benutzt und es ist das Beste für immer. In diesem Code wird auch null behandelt
Versuche dies...
quelle
quelle
quelle