쿼리 구문을 사용하여 다음과 같이 앞과 동일한 기능을 작성할 수도 있습니다.
> (from n in numbers where n % 2 == 0 orderby n descending select n)
OrderedEnumerable<int, int> { 10, 8, 6, 4, 2 }
처음으로 from, where, orderby, descending, select 등 다섯 가지 키워드가 나왔습니다. 여기에서는 ‘메서드 구문을 쿼리 구문으로 변경하면 이러한 형태가 되는구나’ 정도로 살펴봅니다.
집계 함수의 결괏값은 다음과 같이 쿼리 구문과 메서드 구문을 함께 사용하여 구할 수 있습니다.
> var numbers = Enumerable.Range(1, 10); > (from n in numbers where n % 2 == 0 select n).Sum() 30 > (from n in numbers where n % 2 == 0 select n).Count() 5 > (from n in numbers where n % 2 == 0 select n).Average() 6 > (from n in numbers where n % 2 == 0 select n).Max() 10 > (from n in numbers where n % 2 == 0 select n).Min() 2