Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Kombinieren Sie die varchar-Spalte mit der int-Spalte

Die Zeichenfolgenverkettung unterscheidet sich zwischen den Datenbanken, daher ist es hilfreich zu wissen, welche Datenbank, weil Sie Folgendes wissen müssen:

  1. Die Verkettungsmethode/der Operator
  2. Wenn die Datenbank implizite Datentypkonvertierung handhabt

SQL-Server führt keine implizite Konvertierung von numerischen in String-Werte durch:

SELECT CAST(fooid AS VARCHAR(10)) + ' ' + fooname

... also müssen Sie CAST (bzw KONVERTIEREN) um den Datentyp explizit in einen textbasierten Datentyp zu ändern.

Für Oracle und PostgreSQL , verwenden Sie die doppelte Pipe, um Zeichenfolgen zu verketten:

SELECT fooid || ' ' || fooname

Für MySQL , können Sie die CONCAT-Funktion verwenden :

SELECT CONCAT(fooid, ' ', fooname)