T-SQL で区切り文字を使用した文字列の分割
この質問は、テーブルに格納されている長い文字列から特定の情報を抽出する必要性に対処します。カラム。課題は、特定の区切り文字に基づいて文字列を分割し、特定のデータ部分を抽出することにあります。
T-SQL を使用してこれを実現するには、次のアプローチを使用できます。
まず、CHARINDEXまたは PATINDEX 関数を使用して、文字列内の区切り文字 ('|') の位置を特定します。
次に、STUFF関数は、区切り文字の後のテキストを含む新しい文字列を作成するために使用されます。
最後に、SUBSTRING 関数を使用して、この例では「クライアント名」などの目的のテキストを抽出します。区切り文字の位置と指定された文字の長さ。
Select col1, col2, LTRIM(RTRIM(SUBSTRING( STUFF(col3, CHARINDEX('|', col3, PATINDEX('%|Client Name =%', col3) + 14), 1000, ''), PATINDEX('%|Client Name =%', col3) + 14, 1000))) col3 from Table01
このクエリは、CHARINDEX または PATINDEX 関数を利用して、区切り文字の位置を検索します。 「|」 "col3" 列内の文字を削除し、STUFF 関数を使用して区切り文字の後のテキストを含む新しい文字列を作成します。最後に、SUBSTRING 関数を使用して、文字の位置と長さに基づいて「クライアント名」の値を抽出します。
以上がT-SQL の区切り文字列から特定のデータを抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。