カンマで区切られた複数の値で保存されたデータは、構造化形式で取得するときに問題が発生する可能性があります。この記事は、SQL Server 列のカンマ区切り値を個別の行に変換するソリューションを提供することで、この問題に対処することを目的としています。
この例では、サンプル テーブルには、「abc」のようなデータを含む String という名前の列が含まれています。 ,def,ghi」および「jkl,mno,pqr」。目標は、このデータを複数の行を含むテーブルに変換し、各行に String 列の値が 1 つ含まれるようにすることです。
次の SQL Server クエリでこの変換を実現できます:
SELECT A.[id], Split.a.value('.', 'VARCHAR(100)') AS processedrows FROM (SELECT [id], CAST ('<M>' + REPLACE([string], ',', '</M><M>') + '</M>' AS XML) AS String FROM Sample) AS A CROSS APPLY String.nodes ('/M') AS Split(a);
このクエリは、カンマ区切りの値を XML に変換し、各値を個別の行として抽出する高度な技術を使用しています。このアプローチの詳細については、http://www.sqljason.com/2010/05/converting-single-comma- Separated-row.html を参照してください。
以上がSQL Server でカンマ区切り値を複数の行に分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。