SQL サーバーに X 日数を含む CSV フィールドがあります。
数字を使った例を次に示します (読みやすくするため):
1,2,3,4
4,5,1,9
3,6,8,4
各行を並べ替えたいと思います。それを行う簡単な方法はありますか?次の結果が必要です。
1,2,3,4
1,4,5,9
3,4,6,8
ありがとう!
Python のようなプログラミング言語を使用して各行を読み取り、並べ替え、必要に応じて SQL に戻すことをお勧めします。
この機能は SQL 言語の標準ではなく、SQL Server でもすぐに利用できません。
ユーザー定義関数 (UDF) を任意の .NET 言語で記述し、その関数をクエリで呼び出すことができます。関数自体は、単純に文字列を入力として取り、CSV 値を期待して、その文字列のソートされたバージョンを返します。次のように、その関数を使用してテーブルをクエリできます。
SELECT SortedCsv(NumbersOfDays) FROM MyTable
.NET (C#) での UDF の記述について詳しくは、http: //www.dotnetspider.com/resources/19679-Creating-User-Defined-Function-Using-Managed-Code.aspxおよびこの記事を参照してください。 : http://www.diaryofaninja.com/blog/2010/09/06/hidden-gems-microsoft-sql-net-managed-code-support
幸運を!