[C#]19.LINQ와 데이터

안녕하세요 유랑입니다.



이번 시간에는 LINQ에 대해서 알아보겠습니다.

LINQ는 컬렉션을 편리하게 다루기 위해서 만들어진 언어입니다.

어떻게 쓰이는지 한 번 알아볼까요?




1. LINQ



LINQ는 데이터를 찾고 병합하고 정렬하는 부분을 해결해 줍니다.

방대한 데이터를 다룰 때 더욱 더 필요한 것 같네요.

과연 이런 데이터 작업은 어떻게 하는 것일까요.




1-1) LINQ의 기본



LINQ 쿼리식은 반드시 from 절로 시작합니다.

어떤 데이터에서 찾을 것인지, 정렬과 추출 결과 등 LINQ에서 제공되는 조건으로 출력합니다.

코드를 통해서 알아보겠습니다.









1-2) from, where, orderby, select



from말고도 LINQ 쿼리식에는 다양한 역할을 하는 연산자가 있습니다.

where, orderby, select 등이 있는데요.

위에서도 진행하였지만 어떤 기능을 하며 결과가 어떻게 되는지 알아보겠습니다.









1-3) 여러 개의 데이터



여러 개의 데이터를 다룰 때는 from을 중첩해서 사용하는 것이 가능합니다.

foreach 문을 중첩해서 사용하는 것과 유사하다고 생각해 주세요.

자세한건 코드을 통해서 알아보겠습니다.









1-4) group by - 데이터 분류



분류 기준에 따라 데이터를 그룹화시켜준다면 더할 나위 없이 좋을 것 입니다.

group by 절을 통해서 분류해 보겠습니다.









1-5) join - 데이터 연결



join은 두 데이터 원본을 연결하는 연산입니다.

각 데이터 원본에서 특정 필드의 값을 비교하여 연결하는데요.

조인은 내부 조인과 외부 조인이 존재하며,

내부 조인은 교집합과 비슷하며 외부 조인은 모든 데이터를 조인 결과에 포함시킵니다.













1-6) LINQ의 비밀



LINQ는 데이터 질의 코드를 작성할 수 있습니다.

LINQ 쿼리식을 분해해서 일반적인 메소드 호출 코드를 만들어 내는 것인데요.

글보다는 코드를 통해서 알아보겠습니다.









1-7) LINQ 표준 연산자



LINQ 표준 연산자들은 생각보다 많습니다.

OrderBy, Distinct, OfType, All, Cast 등 너무 많이 있는데요.

그런데 LINQ 연산 메소드 중에서 C# 쿼리식을 지원하는 것은 달랑 11개 뿐이네요.

나머지 42개의 메소드를 어떻게 활용할 수 있을까 하는 부분을 코드를 통해서 알아보겠습니다.











2. 마무리



오늘은 LINQ에 대해서 배워보았습니다.

데이터를 찾거나 정렬할 때 도와주는 LINQ는 아직 까지는 너무 어렵게 느껴지네요.

데이터를 계속 쓰일 상황이 생길 때 다시 찾아볼것 같네요.

오늘도 고생하셨습니다.

감사합니다.




수업자료: https://github.com/YouRang12/-Tistory-CShop---Basic







댓글

Designed by JB FACTORY