Di SQL Server, T-SQL CHAR()
fungsi mengonversi int kode ASCII ke nilai karakter. Dengan kata lain, Anda memasukkan bilangan bulat, dan fungsi menafsirkannya sebagai nilai kode untuk karakter string dan mengembalikan karakter string yang sesuai.
Sintaks
Sintaksnya seperti ini:
CHAR ( integer_expression )
Dimana integer_expression
adalah bilangan bulat dari 0 sampai 255.
Jika Anda menentukan bilangan bulat di luar rentang ini, hasilnya adalah NULL
. Hal yang sama berlaku jika Anda memberikan bilangan bulat yang hanya mengekspresikan byte pertama dari karakter bita ganda.
Contoh 1 – Penggunaan Dasar
Berikut adalah contoh untuk mendemonstrasikan penggunaan dasar:
SELECT CHAR(67) AS 'Result';
Hasil:
+----------+ | Result | |----------| | C | +----------+
Jadi jika kita mengubah bilangan bulat, kita mendapatkan karakter yang berbeda:
SELECT CHAR(255) AS 'Result';
Hasil:
+----------+ | Result | |----------| | ÿ | +----------+
Contoh 2 – Banyak Bilangan Bulat
Fungsi ini tidak mendukung banyak bilangan bulat sebagai argumen. Jika Anda memberikan beberapa bilangan bulat, Anda akan mendapatkan kesalahan.
Ini contohnya:
SELECT CHAR(67, 255) AS 'Result';
Hasil:
The char function requires 1 argument(s).
Perhatikan bahwa ini berbeda dengan CHAR()
MySQL fungsi (yang memungkinkan Anda untuk memberikan beberapa bilangan bulat).
Contoh 3 – Bilangan Bulat Di Luar Jangkauan
Fungsi ini juga tidak mendukung bilangan bulat di luar rentang 1 hingga 255. Jika argumen Anda di luar rentang ini, hasilnya adalah NULL
.
Ini contohnya:
SELECT CHAR(256) AS 'Result';
Hasil:
+----------+ | Result | |----------| | NULL | +----------+
Ini sekali lagi berbeda dengan CHAR()
MySQL fungsi, yang menerima bilangan bulat yang lebih besar dari 255 (dalam hal ini, mereka secara otomatis diubah menjadi beberapa byte hasil).
Contoh 4 – Memasukkan Karakter Kontrol
Berikut ini contoh penggunaan CHAR(13)
untuk mencetak karakter berikutnya pada baris baru:
SELECT 'Homer' + CHAR(13) + '[email protected]' AS 'Name/Email';
Hasil:
+--------------+ | Name/Email | |--------------| | Homer [email protected] | +--------------+
Berikut tampilannya jika kita menghapus CHAR(13)
:
SELECT 'Homer' AS 'Name', '[email protected]' AS 'Email';
Hasil:
+--------+-----------------------+ | Name | Email | |--------+-----------------------| | Homer | [email protected] | +--------+-----------------------+