LINQのクエリ式で複数の条件を指定する方法について見ていきましょう。
Andを使用する
Andは「かつ」を意味します。
VBの場合は「And」、C#の場合は「&」を使用します。
以下は3以上 かつ 5以下のデータを取得します。
VBの例
Dim numbers() As Integer = {3, 5, 2, 1, 9, 8, 7} Dim data = From num In numbers Where num >= 3 And num <= 5 Select num
C#の例
int[] numbers = { 3, 5, 2, 1, 9, 8, 7 }; var data = from num in numbers where num >= 3 & num <= 7 select num;
ショートサーキットも使用可能です。
VBの場合は AndAlso, C#は&&を使用します。
VBの例
Dim numbers() As Integer = {3, 5, 2, 1, 9, 8, 7} Dim data = From num In numbers Where num >= 3 AndAlso num <= 5 Select num
C#の例
int[] numbers = { 3, 5, 2, 1, 9, 8, 7 }; var data = from num in numbers where num >= 3 && num <= 7 select num;
Orを使用する
Orは「または」を意味します。
VBの場合は「Or」、C#の場合は「|」を使用します。
以下は3以下 または 5以上のデータを取得します。
VBの例
Dim numbers() As Integer = {3, 5, 2, 1, 9, 8, 7} Dim data = From num In numbers Where num <= 3 Or num >= 8 Select num
C#の例
int[] numbers = { 3, 5, 2, 1, 9, 8, 7 }; var data = from num in numbers where num <= 3 | num >= 8 select num; foreach (var item in data) { Console.WriteLine(item); }
ショートサーキットも使用可能です。
VBの場合は OrElse, C#は||を使用します。
VBの例
Dim numbers() As Integer = {3, 5, 2, 1, 9, 8, 7} Dim data = From num In numbers Where num <= 3 OrElse num >= 8 Select num
C#の例
int[] numbers = { 3, 5, 2, 1, 9, 8, 7 }; var data = from num in numbers where num <= 3 || num >= 8 select num; foreach (var item in data) { Console.WriteLine(item); }
Please follow and like us:
コメント