【SQL】【ストアド】文字列の扱い

■ はじめに

SQLでの文字列の扱いについてメモ。

目次

【1】文字列の取り出し
【2】文字列の長さ

 【1】文字列の取り出し

以下の関数が使える

1)LEFT関数
2)RIGHT関数
3)SUBSTRING関数

 サンプル

/* → 東京都 (左から3文字)*/
SELECT LEFT('東京都世田谷区',3);

/* → 世田谷区 (右から4文字)*/
SELECT RIGHT('東京都世田谷区',4);

/* → 金曜 (4文字目から2文字取得)*/
SELECT SUBSTRING('今日は金曜日', 4, 2);

 【2】文字列の長さ

 * LEN関数

 サンプル

/* → 3 (半角)*/
SELECT LEN('123');

/* → 3 (行末の空白は無視)*/
SELECT LEN('123 ');

/* → 3 (全角)*/
SELECT LEN('あいう');

 使用例

* 一つの項目の中に複数の情報になっていた場合に分割するのに使う
 (例えば、【性別】【生年月日】。CODE = 'F20121011' や 'M20120211')

サンプル

-- 女性(Famale)のデータを取得 
SELECT * FROM Person AS P WHERE LEFT(P.CODE, 1) = 'F';

SELECT * FROM Person AS P
WHERE CONVERT(DATE, SUBSTRING(P.CODE, 2, LEN(P.CODE))) = CONVERT(DATE, '2012-10-11'))

 参考文献

http://news.mynavi.jp/articles/2008/10/22/tsql/index.html