1.LINQ 링큐란?
Language Integrated Query 라고합니다. 데이터를 빠르고 편리하게 추출하는 방식이라 할 수 있습니다. 그리고 C# 3.0부터 추가가 되기 시작한 문법입니다. 기본적으로 람다표현식을 사용하여 간결하고 가독성 좋게 작성 가능합니다.
Linq = SQL + 람다식
2.람다식이란?
람다식은 익명 함수라 부릅니다. 식별자가 없는 함수입니다. 쉽게 말하면 함수인데 함수를 만들지 않고 코드한줄에 불필요한 내용을 삭제하여 호출하는 방식이라고 할수 있습니다. 주로 반복문이나 비교문에 많이 사용합니다.
x => x*10
Func<int, int> square = x => x * x;
Console.WriteLine(square(5));
// Output: // 25
3.Query 쿼리란?
쿼리는 DB(데이터베이스)를 다룰때 많이 나오는 단어입니다. 데이터베이스 테이블에서 데이터 또는 정보를 요청할떄 사용하는 SQL문법이 쿼리입니다.
SQL은 Structured Query Language의 약자입니다.
Structured는 구조화되어있다는 뜻입니다
Query는 데이터를 넣기, 삭제, 수정, 읽기 등의 요청을 할 수 있다는 뜻합니다.
Language는 언어로 요청한다는 뜻입니다.
SQL에서 가장 많이 사용하는 문법은 다음 4가지이다.
from : 어떤 데이터에서 찾을 것입니까?
where : 어떤 조건으로 찾을 것입니까?
order by : 어떤 항목을 기준으로 정렬할 것입니까?
select : 어떤 항목을 추출할 것입니까?
4) 사용 예제 1 - 조건에 맞는 값 추려내기
public void Start()
{
int[] numbers = new int[7] { 0, 1, 2, 3, 4, 5, 6 };
var nQuery =
from num in numbers
where (num % 2) == 0
select num;
foreach (int num in numQuery)
{
Debug.Log($"{num}");
}
}
0
2
4
6
출력됩니다.
간단히 첫 줄부터 해석하자면
from num in numbers //numbers 배열 안 모든 값들
where (num % 2) == 0 //그중에 2로 나눈 나머지가 0인 수중에
select num //값들
이렇게 해석할 수 있습니다.
5) 사용 예제 2 - 정렬하기
orderby 오름차순 -> 낮은 값에서 높은 값으로 순서를 정렬합니다.
float[] valuse = {1.5f, 2.3f, 2f, 4.0f, 9f};
var sortValue = from d in valuse
orderby d
select d;
foreach (float valus in sortValue)
{
Debug.Log($"{valus}");
}
1.5
2
2.3
4
9
descending 내림차순 -> 높은 값에서 낮은 값으로 순서를 정렬합니다.
float[] valuse = {1.5f, 2.3f, 2f, 4.0f, 9f};
var sortValue = from d in valuse
orderby d descending
select d;
foreach (float valus in sortValue)
{
Debug.Log($"{valus}");
}
9
4
2.3
2
1.5
'Unity 유니티 기초강의' 카테고리의 다른 글
게임 서버의 기본지식1 (0) | 2022.06.06 |
---|---|
Unity 로컬라이징 TextMeshPro TMP_Font 유니코드 범위 (1) | 2022.06.04 |
유니티 풀링 Pooling 만들기 최적화 재활용 (0) | 2022.06.04 |
유니티 UGUI Text 로컬라이징 폰트 추천 (0) | 2022.06.04 |
Unity Script lifecycle 유니티 라이프 사이클 면접문제 (0) | 2022.06.04 |
댓글