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

Funktionsweise der CHAR()-Funktion in SQL Server (T-SQL)

In SQL Server das T-SQL CHAR() Funktion konvertiert ein int ASCII-Code in einen Zeichenwert. Mit anderen Worten, Sie übergeben eine Ganzzahl, und die Funktion interpretiert sie als Codewert für ein Zeichenfolgenzeichen und gibt das entsprechende Zeichenfolgenzeichen zurück.

Syntax

Die Syntax lautet wie folgt:

CHAR ( integer_expression )

Wobei integer_expression ist eine ganze Zahl von 0 bis 255.

Wenn Sie eine Ganzzahl außerhalb dieses Bereichs angeben, ist das Ergebnis NULL . Dasselbe gilt, wenn Sie eine Ganzzahl angeben, die nur das erste Byte eines Doppelbyte-Zeichens ausdrückt.

Beispiel 1 – Grundlegende Verwendung

Hier ist ein Beispiel, um die grundlegende Verwendung zu demonstrieren:

SELECT CHAR(67) AS 'Result';

Ergebnis:

+----------+
| Result   |
|----------|
| C        |
+----------+

Wenn wir also die Ganzzahl ändern, erhalten wir ein anderes Zeichen:

SELECT CHAR(255) AS 'Result';

Ergebnis:

+----------+
| Result   |
|----------|
| ÿ        |
+----------+

Beispiel 2 – Mehrere ganze Zahlen

Diese Funktion unterstützt nicht mehrere ganze Zahlen als Argumente. Wenn Sie mehrere Ganzzahlen angeben, erhalten Sie eine Fehlermeldung.

Hier ist ein Beispiel:

SELECT CHAR(67, 255) AS 'Result';

Ergebnis:

The char function requires 1 argument(s).

Beachten Sie, dass dies im Gegensatz zu CHAR() von MySQL steht -Funktion (mit der Sie mehrere Ganzzahlen angeben können).

Beispiel 3 – Ganzzahlen außerhalb des zulässigen Bereichs

Diese Funktion unterstützt auch keine Ganzzahlen außerhalb des Bereichs von 1 bis 255. Wenn Ihr Argument außerhalb dieses Bereichs liegt, ist das Ergebnis NULL .

Hier ist ein Beispiel:

SELECT CHAR(256) AS 'Result';

Ergebnis:

+----------+
| Result   |
|----------|
| NULL     |
+----------+

Dies steht wiederum im Gegensatz zu CHAR() von MySQL Funktion, die ganze Zahlen größer als 255 akzeptiert (in diesem Fall werden sie automatisch in mehrere Ergebnisbytes umgewandelt).

Beispiel 4 – Einfügen von Steuerzeichen

Hier ist ein Beispiel für die Verwendung von CHAR(13) um nachfolgende Zeichen in einer neuen Zeile auszugeben:

SELECT 'Homer' + CHAR(13) + '[email protected]' AS 'Name/Email';

Ergebnis:

+--------------+
| Name/Email   |
|--------------|
| Homer
[email protected]              |
+--------------+

So sieht es aus, wenn wir CHAR(13) entfernen :

SELECT 'Homer' AS 'Name', '[email protected]' AS 'Email';

Ergebnis:

+--------+-----------------------+
| Name   | Email                 |
|--------+-----------------------|
| Homer  | [email protected] |
+--------+-----------------------+