SQL Server に用意されている一部の関数について使い方をまとめます。
文字列操作関数
下記5種類の関数について説明します。
- REPLACE
- SUBSTRING
- UPPER
- LOWER
- LEN
REPLACE(置換)
REPLACE 関数は、文字列内の一部を特定の文字に置換することができます。
構文
REPLACE(‘対象文字列’, ‘置換前文字’, ‘置換後文字’)
SELECT REPLACE('REPLACE', 'E', '') AS 置換
-- RPLAC
SUBSTRING(部分抽出)
SUBSTRING 関数は、文字列内の任意の位置から任意の文字数分抽出することができます。
構文
SUBSTRING(‘対象文字列’, 開始位置, 文字数)
開始位置は0からでなく、1から始まります。
SELECT SUBSTRING('SUBSTRING', 1, 3) AS 部分抽出
-- SUB
UPPER / LOWER(大文字/小文字変換)
UPPER 関数は、小文字アルファベットの文字列を大文字に変換することができます。
構文
UPPER(‘対象文字列’)
SELECT UPPER('target') AS 大文字変換
-- TARGET
逆にLOWER 関数は、大文字アルファベットの文字列を小文字に変換することができます。
構文
LOWER(‘対象文字列’)
SELECT LOWER('TARGET') AS 小文字変換
-- target
LEN(文字数取得)
LEN 関数は文字列の文字数を取得することができます。
構文
LEN(‘対象文字列’)
SELECT LEN('LEN') AS 文字数
--3
日時操作関数
- GETDATE
- YEAR
- MONTH
GETDATE(現在日時の取得)
GETDATE 関数は、現在時刻を取得することができます。
構文
GETDATE()
SELECT GETDATE() AS 現在時刻
--2021-09-10 19:06:12.467
YEAR / MONTH(年 / 月の取得)
YEAR 関数は、日付データから「年」のみ取得することができます。
構文
YEAR(日付)
SELECT YEAR(GETDATE()) AS 年
--2021
MONTH 関数は、日付データから「月」のみ取得することができます。
構文
MONTH(‘日付’)
SELECT MONTH(GETDATE()) AS 月
--9
その他の関数
- ISNULL
- COALESCE
- IIF
- CHOOSE
CHOOSE(指定した引数の値を取得)
CHOOSE 関数は、第2引数以降の値から、第1引数で指定した値の引数にある値を取得することができます。
第1引数で2を指定すれば、第2引数から数えて2番目の第3引数の値を取得します。
構文
CHOOSE(番号, ‘値1’, ‘値2’, ‘値3’)
SELECT CHOOSE(2, 'val1', 'val2', 'val3') AS val
-- val2