SQL Server (Transact-SQL) CHAR() 函数返回具有指定integer_code 的单字节字符(由字符定义)当前数据库的默认排序规则的设置和编码。
integer_code 的范围是从 0 到 255。该函数为 integer_code 返回 NULL 值> 超出此范围或不代表完整字符。当字符超过返回类型的长度时,该函数还会返回 NULL 值。许多常见字符集共享 ASCII 作为子集,并且将为 0 到 127 范围内的整数值返回相同的字符。
语法
CHAR(integer_code)
参数
integer_code | 必填。 指定要检索其字符值(根据 ASCII 表)的整数。 |
返回值
返回由指定integer_code的代码值给出的单字节字符。
示例1:
下面的示例显示了CHAR的用法() 函数。
SELECT CHAR(72);
Result: 'H'
SELECT CHAR(69);
Result: 'E'
SELECT CHAR(NULL);
Result: NULL
SELECT CHAR('73');
Result: 'I'
示例 2:
考虑一个名为 Sample 的数据库表,其中包含以下记录:
Data | x1 | x2 | x3 |
---|---|---|---|
Data1 | 67 | 117 | 116 |
Data2 | 80 | 117 | 116 |
Data3 | 84 | 111 | 111 |
Data4 | 66 | 111 | 119 |
Data5 | 67 | 79 | 68 |
Data6 | 69 | 110 | 100 |
下面给出的语句可用于获取包含由列 x1、x2 和 x3指定的代码值给出的字符的字符串.
SELECT *, CHAR(x1) + CHAR(x2) + CHAR(x3) AS CHAR_String FROM Sample;
查询将产生以下结果:
Data | x1 | x2 | x3 | CHAR_String |
---|---|---|---|---|
Data1 | 67 | 117 | 116 | Cut |
Data2 | 80 | 117 | 116 | Put |
Data3 | 84 | 111 | 111 | Too |
Data4 | 66 | 111 | 119 | Bow |
Data5 | 67 | 79 | 68 | COD |
Data6 | 69 | 110 | 100 | End |