๐ ์ค๋์ ํ์ต ํค์๋
- SQL
๐ฅ select ๋ฌธ๋ฒ ์์
- select
- from
- where
- group by
- having
- order by
์ ํ ์จ ๊ตฌ ํด ์ค
* ์ฟผ๋ฆฌ์ ์คํ ์์๋ from -> where -> group by -> having -> select -> order by
๐ฅ Distinct
- ์ค๋ณต ํ์ ์ ๊ฑฐ
ex) select distinct name from student;
๐ฅ Null
SQL์์ Null ๊ฐ์ ๊ฐ์ด ์๋ค๋ ์๋ฏธ์ ๋๋ค.
โ๏ธ Null๊ฐ์ 0๊ณผ๋ ๋ค๋ฆ
๐ฅ IS NULL, IS NOT NULL
is null ์ฐ์ฐ์๋ null ๊ฐ, ์ฆ ๋น์ด์๋ ๊ฐ์ ์ฐพ์ ๋ ์ฌ์ฉ๋๊ณ
is not null ์ฐ์ฐ์๋ null ๊ฐ์ด ์๋ ๊ฐ, ์ฆ ๋น์ด์์ง ์์ ๊ฐ์ ์ฐพ์ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
๐ฅ ์ค๋ณต ์ ๊ฑฐํ๊ธฐ ๋ฌธ์
table : animal_ins
๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ์ ์ด๋ฆ์ ๋ช ๊ฐ์ธ์ง ์กฐํํ๋ SQL ๋ฌธ์ ์์ฑํด ์ฃผ์ธ์.
์ด๋ ์ด๋ฆ(name)์ด NULL์ธ ๊ฒฝ์ฐ๋ ์ง๊ณํ์ง ์์ผ๋ฉฐ ์ค๋ณต๋๋ ์ด๋ฆ์ ํ๋๋ก ์นฉ๋๋ค.
select count(distinct name)
from animal_ins
where name is not null;
๐ ์ค๋์ ํ๊ณ
SQL์ ๋ฐฐ์๋๊ณ ๋ณต์ต์ ์ ํ๋ค ๋ณด๋ ๊น๋จน๋ ๋ฌธ๋ฒ๋ค์ด ์๊ฒผ์ต๋๋ค.
๋ค์ ํ๋ฒ ๊ธฐ์ต ์์ ๋๋ ค๋์๋ผ๋ ์๊ฐ์ผ๋ก ๋ฌธ๋ฒ์ ์กฐ๊ธ ์ ๋ฆฌํด ๋ณด์์ต๋๋ค.
์ข์ ๊ฐ๋ฐ์๊ฐ ๋๊ธฐ ์ํด์ SQL๋ ๊พธ์คํ๊ฒ ๊ณต๋ถํ๋๋ก ๋ ธ๋ ฅํ๊ฒ ์ต๋๋ค.