CHAR (Transact-SQL)
Преобразует код int ASCII в символ.
Синтаксис
CHAR ( integer_expression )
Аргументы
- integer_expression
Целое число от 0 до 255. Значение NULL возвращается в случае, если целочисленное выражение находится вне этой области значений.
Типы возвращаемых данных
char(1)
Замечания
Функция CHAR может использоваться для вставки управляющих символов в символьные строки. В следующей таблице показаны некоторые часто используемые управляющие символы.
Управляющий символ |
Значение |
---|---|
Табуляция |
char(9) |
Перевод строки |
char(10) |
Возврат каретки |
char(13) |
Примеры
A. Использование ASCII и CHAR для отображения значений ASCII из строки
В следующем примере отображается значение ASCII и символ для каждого символа в строке New Moon.
SET TEXTSIZE 0
-- Create variables for the character string and for the current
-- position in the string.
DECLARE @position int, @string char(8)
-- Initialize the current position and the string variables.
SET @position = 1
SET @string = 'New Moon'
WHILE @position <= DATALENGTH(@string)
BEGIN
SELECT ASCII(SUBSTRING(@string, @position, 1)),
CHAR(ASCII(SUBSTRING(@string, @position, 1)))
SET @position = @position + 1
END
GO
Ниже приводится результирующий набор.
----------- -
78 N
----------- -
101 e
----------- -
119 w
----------- -
32
----------- -
77 M
----------- -
111 o
----------- -
111 o
----------- -
110 n
----------- -
Б. Использование функции CHAR для вставки управляющего символа
В следующем примере используется выражение CHAR(13), чтобы отображать имя и адрес электронной почты в отдельных строках, когда результаты возвращаются в виде текста.
USE AdventureWorks2008R2;
GO
SELECT p.FirstName + ' ' + p.LastName, + CHAR(13) + pe.EmailAddress
FROM Person.Person p JOIN Person.EmailAddress pe
ON p.BusinessEntityID = pe.BusinessEntityID
AND p.BusinessEntityID = 1;
GO
Ниже приводится результирующий набор.
Ken Sanchez
ken0@adventure-works.com
(Обработано строк: 1)