C# 문법 4주차 - LINQ

Amberjack·2024년 1월 2일
0

C# 문법

목록 보기
31/44

🔍 LINQ(Language Integrated Query)

🤔 LINQ?

  • .NET 프레임워크에서 제공되는 쿼리 언어 확장 → 코드에서 쿼리문을 던질 수 있다!!
  • 데이터 소스(컬렉션, 데이터 베이스, 배열 등...)에서 쿼리문을 통해 데이터를 조작, 사용할 수 있다.
  • 데이터 베이스 쿼리와 유사한 방식으로 데이터를 필터링, 정렬, 그룹화, 조인 등 다양한 작업을 수행할 수 있다.
  • LINQ는 객체, 데이터베이스, XML 문서 등 다양한 데이터 소스를 지원한다.

▪️ 구조

var result = from 변수 in 데이터소스
             [where 조건식]
             [orderby 정렬식 [, 정렬식...]]
             [select 식];

  • var 키워드는 결과 값의 자료형을 자동으로 추론한다.
  • from절에서는 데이터 소스를 지정한다. → foreach와 유사하다!
  • where절은 선택적으로 사용하며, 조건식을 지정하여 데이터를 필터링한다.
  • orderby절은 선택적으로 사용하며, 정렬 방식을 지정한다.
  • select절은 선택적으로 사용하며, 조회할 데이터를 지정한다.

▪️ 예시)

// 데이터 소스 정의 (컬렉션)
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };

// 쿼리 작성 (선언적인 구문)
// 짝수인 numbers만 저장하기
var evenNumbers = from num in numbers
                  where num % 2 == 0
                  select num;

// 쿼리 실행 및 결과 처리
foreach (var num in evenNumbers)
{
    Console.WriteLine(num);
}

0개의 댓글