[C# 문법] LINQ의 기본 : 2장 from, where, orderby, select 문 이용하여 LINQ 문 작성하기
- C#/C# 문법
- 2020. 7. 20. 00:00
안녕하세요.
앞서서 Linq의 기본 1장에서 간단히 C# 에서 Linq 구문을 사용하는 방법에 대해서 알아 보았는데요.
오늘은 그 응용 시간으로써, 학생 클래스를 선언하여 List에 학생들을 저장해서 여기서 성적이 80점 이상인 학생들을 원하는 컬럼들만 간추려서 조회하는 방법을 Linq 구문을 통해서 보여드리도록 하겠습니다.
예제 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;
namespace Linq_Test { class Program { static void Main(string[] args) { //List 객체 선언 List<Student> _list = new List<Student>();
//임시로 학생 생성 for(int idx = 0; idx < 10; idx++) { Student stu = new Student(); stu.Name = "학생" + "_" + idx; stu.Age = 20; stu.Grade = "2학년"; stu.Score = 90 + idx;
_list.Add(stu); //학생들을 List에 저장 }
//Linq 구문을 통해서 성적이 95점 이상인 학생 조회하기 var query = from stu in _list where stu.Score >= 95 orderby stu.Score ascending select new { Name = stu.Name, Score = stu.Score };
Console.WriteLine("-------------성적 95점 이상인 학생들-------------"); //출력하기 foreach(var stu in query) { string msg = string.Format("학생 이름 :{0} 성적 : {1}", stu.Name, stu.Score); Console.WriteLine(msg); } } }
/// <summary> /// 학생 클래스 선언 /// </summary> public class Student { public string Name { get; set; } //학생 이름 public int Age { get; set; } //학생 나이 public string Grade { get; set; } //학생 학년 public int Score { get; set; } //학생 성적 } }
|
실행 결과
위와 같이 Linq 구문을 이용하여 성적이 95점 이상인 학생들을 출력해 보았습니다.
다음 포스팅에서는 GroupBy 구문에 대해서 알려 드리도록 하겠습니다.
감사합니다.^^
'C# > C# 문법' 카테고리의 다른 글
[C# 문법] C# LINQ 4장 – Group By 사용하기 (2) | 2020.07.22 |
---|---|
[C# 문법] LINQ의 기본 3장 : LINQ from 중첩하여 사용하기 (0) | 2020.07.21 |
[C# 문법] LINQ의 기본 : 1장 from, where, orderby, select 문 이용하여 LINQ 문 작성하기 (0) | 2020.07.19 |
[C# 문법] C# DataTable 필요한 컬럼 추출 및 중복 데이터 제거하기 (0) | 2020.07.10 |
[C# 문법] C# Linq 내에서 변수 지정하기 (let 키워드) (0) | 2020.06.24 |
이 글을 공유하기