[C#] LINQ
LINQ๋ ์ธ์ด์ ํตํฉ๋ ์ฟผ๋ฆฌ(Language Integrated Query)์ ์ค๋ง๋ก,
์ธ์ด ๊ตฌ๋ฌธ ๋ด์์ SQL ์คํ์ผ์ ์ฟผ๋ฆฌ๋ฅผ ํตํด ๋ณตํฉ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ฒ ํด์ฃผ๋ ๊ฝค ๋ฉ์ง๊ณ ํธํ ๋
์์ด๋ค.
ํ๋ฒ ์ฒ์ฒํ ์ดํด๋ณด์
from ... in ... select ... ๊ตฌ๋ฌธ
linq์ ์์ด์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ด ๋๋ ๊ฒ์ด ๋ฐ๋ก from ์ ๊ณผ select ์ ์ด๋ค.
from์ ๋ฌด์จ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ๊ฐ์ ธ์ฌ์ง๋ฅผ ํํํ๋ค.
๊ทธ๋ฆฌ๊ณ select๋ ํ์ฌ ์ ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ๋ฐํํ ์ง๋ฅผ ํํํ๋ค.
ํ๋ฒ linq ๊ตฌ๋ฌธ์ ์ฌ์ฉํด์ ๋ฐฐ์ด ๋ฐ์ดํฐ๋ฅผ ๊ฑด๋๋ฆฌ์ง ์๊ณ ๊ทธ๋๋ก, ๋ฐฐ์ถํด๋ณด๊ฒ ๋ค.
์ด๋ ๊ฒ ํ๋ฉด ๋๋ค.

๋ณ๋ก ๋ณต์กํ ๊ฑด ์๋ค.
๊ฐ ์์์ 2๋ฅผ ๊ณฑํ๊ณ ์ถ๋ค๋ฉด select ๋ฐํ ์์ ๊ฑด๋๋ ค์ฃผ๋ฉด ๋๋ค.


๊ฑธ๋ฌ๋ด๊ธฐ: where ์
์์์๋ from ์ ์์ ๊ฐ์ ธ์จ ๋ชจ๋ ์์๋ฅผ ๋ฐํํ์๋ค. ํ์ง๋ง ํ์ํ ์์๋ฅผ ์ ํ์ ์ผ๋ก ๋ฐ์์ผ ํ ๊ฒฝ์ฐ๋ ๋ง๋ค.
where์ ์ ๊ทธ๋ด ๋ ์ฌ์ฉํ๋ค.
where ์ ์ ํํ์์๋ ์กฐ๊ฑด์์ด ๋ค์ด๊ฐ์ผ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ํด๋น ์กฐ๊ฑด์์ ๋ถํฉํ๋ ์์๋ค๋ง ๋จ๊ธฐ๊ณ ์ ๋ถ ๋ฒ๋ฆฐ๋ค.
๋ง์ฝ ์ ์ ๋ฐฐ์ด์์ ํ์๋ง ๋จ๊ธฐ๊ณ ๋ฒ๋ฆฌ๊ณ ์ถ๋ค๋ฉด, ์ด๋ ๊ฒ ํ๋ฉด ๋๋ค.

๊ทธ๋ ๋ค.
์ด์ธ์๋ ์ฌ๋ฌ๊ฐ์ง ํํ ์ ์ด ์กด์ฌํ๋๋ฐ, ์ฒ์ฒํ ๋ ๋ค๋ค๋ณด๋๋ก ํ๊ฒ ๋ค.