ホームページ >バックエンド開発 >C++ >元のテーブルを変更せずに DataTable の行を並べ替えるにはどうすればよいですか?

元のテーブルを変更せずに DataTable の行を並べ替えるにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2025-01-08 19:37:49789ブラウズ

How Can I Sort a DataTable's Rows Without Modifying the Original Table?

データテーブルの行ソート方法

データテーブルを操作する場合、多くの場合、特定の条件に基づいて行を並べ替える必要があります。 2 つの列を持つデータ テーブルがあるとします:

<code>COL1   COL2
Abc    5
Def    8
Ghi    3</code>

目的は、このデータ テーブルを COL2 列の値に基づいて降順に並べ替えることで、次の出力が得られます。

<code>COL1   COL2
Def    8
Abc    5
Ghi    3</code>
DataView の並べ替えは簡単ですが、DataView を使用せずに DataTable 自体を直接並べ替えたい場合には問題が発生します。

解決策

DataTable を直接その場で並べ替えることはできません。ただし、必要に応じて、並べ替えられた DataView から作成された新しい DataTable を作成できます。その方法は次のとおりです:

<code class="language-csharp">DataView dv = ft.DefaultView;
dv.Sort = "COL2 desc";
DataTable sortedDT = dv.ToTable();</code>
コードでは、まず元の DataTable (ft) から DataView (dv) を作成します。次に、Sort プロパティを使用して並べ替え条件を DataView に適用します。最後に、ToTable() メソッドを使用して、並べ替えられた DataView から新しい DataTable (sortedDT) を作成します。

このアプローチを使用すると、元の DataTable を変更することなく、目的の並べ替えを実現できます。

以上が元のテーブルを変更せずに DataTable の行を並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。