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 コードの値で出力する
次の例では、New Moon という文字列の各文字とそれに対応する ASCII コードの値を出力します。
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
----------- -
B. CHAR を使用して制御文字を挿入する
次の例では、結果がテキストで返されるときに、CHAR(13) を使用して、名前、電子メール アドレス、および電話番号を別々の行に出力します。
USE AdventureWorks;
GO
SELECT FirstName + ' ' + LastName, + CHAR(13) + EmailAddress + CHAR(13)
+ Phone
FROM Person.Contact
WHERE ContactID = 1;
GO
以下に結果セットを示します。
Gustavo Achong
gustavo0@adventure-works.com
398-555-0132
(1 row(s) affected)