データの並べ替え [Visual Basic]
- [アーティクル]
- 02/08/2022
このページはお役に立ちましたか?
このページはお役に立ちましたか?
はい
No
追加のフィードバックはありますか?
フィードバックが Microsoft に送信されます。[送信] ボタンを押すと、お客様からのフィードバックが Microsoft 製品とサービスの品質向上のために使用されます。 プライバシー ポリシー。
送信
ありがとうございます。
この記事の内容
並べ替え操作では、1 つ以上の属性に基づいてシーケンスの要素を並べ替えます。 並べ替えの第 1 条件で、要素に対して一回目の並べ替えが実行されます。 第 2 条件を指定すると、第 1 条件で並べ替えられた各グループ内の要素を並べ替えることができます。
次の図は、文字のシーケンスに対してアルファベット順の並べ替え操作を実行した結果を示しています。
次のセクションでは、データの並べ替えを実行する標準クエリ演算子のメソッドの一覧を示します。
メソッド
OrderBy | 値を昇順に並べ替えます。 | Order By | Enumerable.OrderBy Queryable.OrderBy |
OrderByDescending | 値を降順に並べ替えます。 | Order By Descending | Enumerable.OrderByDescending Queryable.OrderByDescending |
ThenBy | 2 番目の並べ替えを昇順で実行します。 | Order By , | Enumerable.ThenBy Queryable.ThenBy |
ThenByDescending | 2 番目の並べ替えを降順で実行します。 | Order By , Descending | Enumerable.ThenByDescending Queryable.ThenByDescending |
Reverse | コレクションの要素の順序を反転させます。 | 該当なし。 | Enumerable.Reverse Queryable.Reverse |
クエリ式の構文例
1 番目の並べ替えの例
1 番目の並べ替え [昇順]
次の例は、LINQ クエリで Order By 句を使用して、配列内の文字列を文字列長に従って昇順に並べ替える方法を示しています。
Dim words = {"the", "quick", "brown", "fox", "jumps"} Dim sortQuery = From word In words Order By word.Length Select word Dim sb As New System.Text.StringBuilder[] For Each str As String In sortQuery sb.AppendLine[str] Next ' Display the results. MsgBox[sb.ToString[]] ' This code produces the following output: ' the ' fox ' quick ' brown ' jumps1 番目の並べ替え [降順]
次の例は、LINQ クエリで Order By Descending 句を使用して、文字列を最初の文字に従って降順に並べ替える方法を示しています。
Dim words = {"the", "quick", "brown", "fox", "jumps"} Dim sortQuery = From word In words Order By word.Substring[0, 1] Descending Select word Dim sb As New System.Text.StringBuilder[] For Each str As String In sortQuery sb.AppendLine[str] Next ' Display the results. MsgBox[sb.ToString[]] ' This code produces the following output: ' the ' quick ' jumps ' fox ' brown2 番目の並べ替えの例
2 番目の並べ替え [昇順]
次の例は、LINQ クエリで Order By 句を使用して、配列内の文字列に対して 1 番目および 2 番目の並べ替えを実行する方法を示しています。 文字列は、最初に文字列長を基準として、次に文字列の最初の文字を基準として、どちらも昇順に並べ替えられます。
Dim words = {"the", "quick", "brown", "fox", "jumps"} Dim sortQuery = From word In words Order By word.Length, word.Substring[0, 1] Select word Dim sb As New System.Text.StringBuilder[] For Each str As String In sortQuery sb.AppendLine[str] Next ' Display the results. MsgBox[sb.ToString[]] ' This code produces the following output: ' fox ' the ' brown ' jumps ' quick2 番目の並べ替え [降順]
次の例は、LINQ クエリで Order By Descending 句を使用して、1 番目の並べ替えを昇順で実行し、2 番目の並べ替えを降順で実行する方法を示しています。 各文字列は、最初に文字列長を基準として、次に文字列の最初の文字を基準として並べ替えられます。
Dim words = {"the", "quick", "brown", "fox", "jumps"} Dim sortQuery = From word In words Order By word.Length, word.Substring[0, 1] Descending Select word Dim sb As New System.Text.StringBuilder[] For Each str As String In sortQuery sb.AppendLine[str] Next ' Display the results. MsgBox[sb.ToString[]] ' This code produces the following output: ' fox ' the ' quick ' jumps ' brown関連項目
- System.Linq
- 標準クエリ演算子の概要 [Visual Basic]
- Order By 句
- 方法: クエリ結果を並べ替える
- 方法: 任意の単語またはフィールドを基準にテキスト データの並べ替えまたはフィルター処理を実行する [LINQ] [Visual Basic]