SQL Serverを使用して文字列を分割する方法は、データ操作やデータ処理において非常に重要です。
文字列を特定の文字数で分割する方法や区切り文字で分割する方法を理解することで、
効率的にデータを操作できます。
文字列を文字数で分割する
文字列を特定の文字数で分割する方法は、SUBSTRING関数を使用します。
以下に具体的な方法を示します。
DECLARE @String NVARCHAR(MAX) = 'Hello World' DECLARE @Length INT = 5 SELECT SUBSTRING(@String, 1, @Length) AS Substring1, SUBSTRING(@String, @Length + 1, LEN(@String) - @Length) AS Substring2
このクエリでは、@String変数の文字列を@Lengthで指定された文字数で分割しています。
SUBSTRING関数の第1引数には対象の文字列、第2引数には開始位置、第3引数には文字数を指定します。
文字列をカンマ区切り文字で分割する
文字列を特定の区切り文字で分割する方法は、STRING_SPLIT関数を使用します(SQL Server 2016以降)。
以下に具体的な方法を示します。
DECLARE @String NVARCHAR(MAX) = 'Apple,Orange,Banana' SELECT value AS SplitValue FROM STRING_SPLIT(@String, ',')
このクエリでは、@String変数の文字列を,で指定された区切り文字で分割しています。
STRING_SPLIT関数は、文字列と区切り文字を受け取り、分割された部分文字列を結果セットとして返します。
広告
まとめ
sqlserverのSQLで文字列を分割する方法は、
文字数で分割する場合はSUBSTRING関数を、区切り文字で分割する場合はSTRING_SPLIT関数を使用します。
これらの関数を使うことで、効率的に文字列を分割することができます。