Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana Fungsi CHAR() Bekerja di SQL Server (T-SQL)

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] |
+--------+-----------------------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Perbaiki Msg 241 "Konversi gagal saat mengonversi tanggal dan/atau waktu dari string karakter" di SQL Server

  2. Bagaimana DENSE_RANK() Bekerja di SQL Server

  3. Bagaimana Fungsi PATINDEX() Bekerja di SQL Server (T-SQL)

  4. Batas memori di SQL Server 2016 SP1

  5. Cara Menginstal sqlcmd &bcp di Ubuntu