EEALL@ONCE

๐Ÿ“ŠCOALESCE ๋ณธ๋ฌธ

Data๐Ÿ“Š

๐Ÿ“ŠCOALESCE

์˜ฌ์—ฃ์›์Šค 2023. 8. 8. 12:29
728x90

`COALESCE` ํ•จ์ˆ˜๋Š” SQL์—์„œ ์‚ฌ์šฉ๋˜๋ฉฐ, ์ธ์ˆ˜ ๋ชฉ๋ก ์ค‘์—์„œ ์ฒซ ๋ฒˆ์งธ NULL์ด ์•„๋‹Œ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋ชจ๋“  ์ธ์ˆ˜๊ฐ€ NULL์ด๋ผ๋ฉด, `COALESCE` ์—ญ์‹œ NULL์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์ด ํ•จ์ˆ˜๋Š” ์ฃผ๋กœ NULL ๊ฐ’์„ ๋‹ค๋ฅธ ๊ฐ’์œผ๋กœ ๋Œ€์ฒดํ•  ๋•Œ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ์•„๋ž˜์˜ ์ฟผ๋ฆฌ์—์„œ:


COALESCE(SUM(...), 0)



๋งŒ์•ฝ `SUM(...)`์˜ ๊ฒฐ๊ณผ๊ฐ€ NULL์ด๋ผ๋ฉด, `COALESCE`๋Š” 0์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ `SUM(...)`์˜ ๊ฒฐ๊ณผ๊ฐ€ NULL์ด ์•„๋‹ˆ๋ผ๋ฉด ๊ทธ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Š” ํŠน์ • ์ง‘๊ณ„ ํ•จ์ˆ˜์˜ ๊ฒฐ๊ณผ๊ฐ€ NULL์ผ ๊ฒฝ์šฐ ๊ธฐ๋ณธ๊ฐ’์„ ์ œ๊ณตํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์œ ์šฉํ•œ ํŒจํ„ด์ž…๋‹ˆ๋‹ค.

728x90

'Data๐Ÿ“Š' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

๐Ÿ“Š UNIQUE / PRIMARY / ๊ธฐ๋ณธ INDEX  (0) 2023.11.20
๐Ÿ“ŠSQL ์˜ค๋ฅ˜ (1248): Every derived table must have its own alias  (0) 2023.10.10