Null
[Database] SQL์์ NULL์ ์๋ฏธ์ NULL์ ๋ํ ์ฐ์ฐ
NULL์ ์๋ฏธ
์๋ ์ธ๊ฐ์ง์ ์๋ฏธ๊ฐ ์๋๋ฐ, ์ด ์ธ๊ฐ์ง ์๋ฏธ ๋ชจ๋๋ฅผ NULL ํ๋๋ก ํํํด์ค
unknown
์์ง ์๋ ค์ง์ง ์์
์) ์์ผ์ด ์์ ๊ฑด๋ฐ, ์์ผ์ด ์ธ์ ์ธ์ง ๋ชจ๋ฆ
unabailable or withheld
์ ๋ณด๋ ์์ง๋ง ์ด์ฉํ ์ ์์
not applicable
ํด๋น์ฌํญ์ด ์๋, ์ ์ฉ์ฌํญ์ด ์์
ํน์ง
์๋ก ๋ค๋ฅธ ํํ์ด ๊ฐ์ attribute์ ๋ํด NULL์ ๊ฐ๊ณ ์๋ค๊ณ ํ ๋, ๋์ ์ํ(๊ฐ)๊ฐ ๊ฐ๋ค๊ณ ํ ์ ์์
์ฐ์ฐ
=๊ฐ์ ๋์ผ์ฑ์ ํ์ธํ๋ ์ฐ์ฐ์์ธ๋ฐ, NULL์ ๊ฐ์ด ์๋๋ผ์ ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ์ฌ ์ ์์
WHERE birth_date = NULL์ผ๋ก SELECT ํด๋, birth_date์ NULL์ด ๋ค์ด๊ฐ์๋ ํํ์ ๋ถ๋ฌ์ค์ง ๋ชปํจWHERE birth_date IS NULL์ ์ฌ์ฉํด์ผ ํจ
three-valued logic
NULL๊ณผ ๋น๊ต์ฐ์ฐ ํ์ ๋, ๋์ค๋ ๊ฒฐ๊ณผ
UNKNOWN์ผ๋ก ์ฒ๋ฆฌ
๋
ผ๋ฆฌ ์ฐ์ฐ
๋ ผ๋ฆฌ ์ฐ์ฐ์์ ์ด๋ค ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ์ค๋์ง ์๊ฐํด๋ณด๊ธฐ NULL์ ์ด๋ค ๊ฐ์ผ์ง ์์ง ๋ชจ๋ฅด๋๊น ์ด ๊ฐ์ผ ์๋ ์๊ณ ์ ๊ฐ์ผ ์๋ ์๋ค๊ณ ์๊ฐํ๋ฉด ๋จ

WHERE ์ ์์์ NULL ๋น๊ต/๋
ผ๋ฆฌ์ฐ์ฐ
where์ ์์๋ condition(s)์ ๊ฒฐ๊ณผ๊ฐ TRUE์ธ tuple(s)๋ง ์ ํ๋จ
๊ฒฐ๊ณผ๊ฐ FALSE ์ด๊ฑฐ๋ UNKNOWN ์ด๋ฉด ํด๋น tuple์ ์ ํ๋์ง ์์
NOT IN ์ฌ์ฉ์ ์ฃผ์ ์ฌํญ
v NOT IN (v1, v2, v3)์ผ ๋,v != v1 AND v != v2 AND v != v3์ ๊ฐ์ ์๋ฏธ๋ง์ฝ v1 ์ค์ ํ๋๊ฐ NULL์ด๋ผ๋ฉด? -> FALSE or UNKNOWN ์ด ๋์ฌ ๊ฑฐ์ผ. TRUE๋ ์ ๋ ๋์ฌ ์ ์์
v ๊ฐ NULL ์ด๋ผ๋ฉด ๊ฒฐ๊ณผ๋ UNKNOWN
WHERE ์ ์ TRUE์ธ ๊ฒ๋ง ๋ฐํํจ
ํด๊ฒฐ ๋ฐฉ๋ฒ
NOT NULL constraint ๋ก ์ค์
NOT EXISTS๋ก ๋ฐ๊ฟ์ ์จ์ฃผ๊ธฐ
NOT IN์ ์กฐ๊ฑด(์๋ธ์ฟผ๋ฆฌ ๋ฑ)์ NULL ์ด ํฌํจ๋์ง ์๊ฒ AND __ IS NOT NULL ์ ๋ฃ์ด์ค
์ฐธ๊ณ
Last updated