๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

์กฐ๊ฑด๋ฌธ (CASE WHEN, IF) ํ•จ์ˆ˜ ์‚ฌ์šฉ๋ฒ• & ์˜ˆ์ œ

by 5566 2023. 10. 19.

1. ์กฐ๊ฑด๋ฌธ์˜ ๊ฐœ๋…๊ณผ ์‚ฌ์šฉ๋ฒ•

์กฐ๊ฑด๋ฌธ์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๋ช…๋ น ๋˜๋Š” ๋™์ž‘์„ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ์กฐ๊ฑด๋ฌธ์„ ์‚ฌ์šฉํ•˜๋ฉด ํ”„๋กœ๊ทธ๋žจ์ด ์ฃผ์–ด์ง„ ์กฐ๊ฑด์— ๋งž๊ฒŒ ํŠน์ • ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€ํ‘œ์ ์ธ ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋กœ๋Š” CASE WHEN๊ณผ IF๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

1.1 CASE WHEN ํ•จ์ˆ˜

CASE WHEN ํ•จ์ˆ˜๋Š” ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์กฐ๊ฑด์‹์ž…๋‹ˆ๋‹ค. ์ด ํ•จ์ˆ˜๋Š” ์ผ๋ จ์˜ ์กฐ๊ฑด์„ ํ‰๊ฐ€ํ•˜๊ณ , ์ฒซ ๋ฒˆ์งธ๋กœ true์ธ ๊ฒฝ์šฐ์— ํ•ด๋‹นํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. CASE WHEN ํ•จ์ˆ˜์˜ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

CASE
    WHEN ์กฐ๊ฑด1 THEN ๊ฒฐ๊ณผ1
    WHEN ์กฐ๊ฑด2 THEN ๊ฒฐ๊ณผ2
    ...
    ELSE ๊ฒฐ๊ณผN
END

์œ„์˜ ๊ตฌ๋ฌธ์—์„œ ์กฐ๊ฑด1๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ ํ‰๊ฐ€ํ•˜๋ฉด์„œ true์ธ ๊ฒฝ์šฐ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋ชจ๋“  ์กฐ๊ฑด์ด false์ผ ๊ฒฝ์šฐ ELSE ์ ˆ์— ํ•ด๋‹นํ•˜๋Š” ๊ฒฐ๊ณผN์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

1.2 IF ํ•จ์ˆ˜

IF ํ•จ์ˆ˜๋Š” ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‘ ๊ฐ€์ง€ ๊ฒฐ๊ณผ ์ค‘ ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์กฐ๊ฑด๋ฌธ์ž…๋‹ˆ๋‹ค. IF ํ•จ์ˆ˜์˜ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

IF(์กฐ๊ฑด, true์ผ ๋•Œ ๊ฒฐ๊ณผ, false์ผ ๋•Œ ๊ฒฐ๊ณผ)

์กฐ๊ฑด์ด true์ธ ๊ฒฝ์šฐ true์ผ ๋•Œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ์กฐ๊ฑด์ด false์ธ ๊ฒฝ์šฐ false์ผ ๋•Œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์กฐ๊ฑด๋ฌธ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๊ฐ„๋‹จํžˆ ์†Œ๊ฐœํ–ˆ์œผ๋‹ˆ, ์ด์ œ ์‹ค์ œ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด CASE WHEN๊ณผ IF ํ•จ์ˆ˜์˜ ์‚ฌ์šฉ๋ฒ•์„ ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

2. CASE WHEN ํ•จ์ˆ˜์˜ ์‚ฌ์šฉ๋ฒ•๊ณผ ์˜ˆ์ œ

CASE WHEN ํ•จ์ˆ˜๋Š” ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์กฐ๊ฑด์‹์ž…๋‹ˆ๋‹ค. ์ด ํ•จ์ˆ˜๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์กฐ๊ฑด์„ ํ‰๊ฐ€ํ•˜๊ณ , ์ฒซ ๋ฒˆ์งธ๋กœ true์ธ ๊ฒฝ์šฐ์— ํ•ด๋‹นํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

CASE WHEN ํ•จ์ˆ˜์˜ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

CASE
    WHEN ์กฐ๊ฑด1 THEN ๊ฒฐ๊ณผ1
    WHEN ์กฐ๊ฑด2 THEN ๊ฒฐ๊ณผ2
    ...
    ELSE ๊ฒฐ๊ณผN
END

CASE ํ‚ค์›Œ๋“œ์™€ ์กฐ๊ฑด์‹ 'WHEN ์กฐ๊ฑด THEN ๊ฒฐ๊ณผ'๋ฅผ ํ•œ ์Œ์œผ๋กœ ์—ฌ๋Ÿฌ ๋ฒˆ ๋‚˜์—ดํ•˜๊ณ , ELSE ํ‚ค์›Œ๋“œ๋ฅผ ํ†ตํ•ด ๋ชจ๋“  ์กฐ๊ฑด์ด false์ธ ๊ฒฝ์šฐ์— ๋ฐ˜ํ™˜ํ•  ๊ฒฐ๊ณผ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ๋‹จ์ˆœํ•œ ์žฌ๋ฌด๋ณด๊ณ ์„œ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์ƒ๊ฐํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ˆ˜์ต๊ธˆ์•ก์— ๋”ฐ๋ผ ์ด์ต ์—ฌ๋ถ€๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํ•„๋“œ์ธ '์ด์ต์—ฌ๋ถ€'๋ฅผ ์ถ”๊ฐ€ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ CASE WHEN ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

SELECT
    ๋‚ ์งœ,
    ์ˆ˜์ต๊ธˆ์•ก,
    CASE WHEN ์ˆ˜์ต๊ธˆ์•ก > 0 THEN '์ด์ต'
         WHEN ์ˆ˜์ต๊ธˆ์•ก < 0 THEN '์†์‹ค'
         ELSE '์ˆ˜์ต ๊ท ํ˜•'
    END AS ์ด์ต์—ฌ๋ถ€
FROM
    ์žฌ๋ฌด๋ณด๊ณ ์„œ;

์œ„์˜ ์˜ˆ์ œ์—์„œ๋Š” ์ˆ˜์ต๊ธˆ์•ก์ด 0๋ณด๋‹ค ํฐ ๊ฒฝ์šฐ '์ด์ต'์„, 0๋ณด๋‹ค ์ž‘์€ ๊ฒฝ์šฐ '์†์‹ค'์„, ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ '์ˆ˜์ต ๊ท ํ˜•'์„ ์ด์ต์—ฌ๋ถ€ ํ•„๋“œ์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๋งค์šฐ ๊ฐ„๋‹จํ•œ ์˜ˆ์ œ์ด์ง€๋งŒ, CASE WHEN ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์กฐ๊ฑด์„ ๊ฒ€์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ฃผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

CASE WHEN ํ•จ์ˆ˜๋Š” ๋‹ค์–‘ํ•œ ์กฐ๊ฑด๊ณผ ๊ฒฐ๊ณผ๋ฅผ ์กฐํ•ฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ณต์žกํ•œ ๋กœ์ง์„ ์ฒ˜๋ฆฌํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์— ๋”ฐ๋ผ ํŠน์ •ํ•œ ๋ฌธ๋ฒ•์ด๋‚˜ ์ถ”๊ฐ€์ ์ธ ๊ธฐ๋Šฅ์„ ์ง€์›ํ•  ์ˆ˜๋„ ์žˆ์œผ๋‹ˆ, ๊ฐ๊ฐ์˜ ๋ฌธ์„œ๋‚˜ ์˜ˆ์ œ๋ฅผ ์ฐธ๊ณ ํ•˜์‹œ๋ฉด ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

3. IF ํ•จ์ˆ˜์˜ ์‚ฌ์šฉ๋ฒ•๊ณผ ์˜ˆ์ œ

IF ํ•จ์ˆ˜๋Š” ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‘ ๊ฐ€์ง€ ๊ฒฐ๊ณผ ์ค‘ ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์กฐ๊ฑด๋ฌธ์ž…๋‹ˆ๋‹ค. IF ํ•จ์ˆ˜๋Š” ์ฃผ์–ด์ง„ ์กฐ๊ฑด์„ ํ‰๊ฐ€ํ•˜๊ณ , ์กฐ๊ฑด์ด true์ธ ๊ฒฝ์šฐ true์ผ ๋•Œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ์กฐ๊ฑด์ด false์ธ ๊ฒฝ์šฐ false์ผ ๋•Œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

IF ํ•จ์ˆ˜์˜ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

IF(์กฐ๊ฑด, true์ผ ๋•Œ ๊ฒฐ๊ณผ, false์ผ ๋•Œ ๊ฒฐ๊ณผ)

์กฐ๊ฑด์€ ํ‰๊ฐ€ํ•  ์‹์ด๋ฉฐ, ์ด ์‹์ด true๋‚˜ false ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. true์ผ ๋•Œ ๊ฒฐ๊ณผ์™€ false์ผ ๋•Œ ๊ฒฐ๊ณผ์—๋Š” ์–ด๋–ค ๊ฐ’์ด๋“  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ํ•™์ƒ๋“ค์˜ ์„ฑ์ ์„ ๊ธฐ์ค€์œผ๋กœ ํ•ฉ๊ฒฉ ์—ฌ๋ถ€๋ฅผ ํŒ๋‹จํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์ƒ๊ฐํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์„ฑ์ ์ด 60 ์ด์ƒ์ธ ๊ฒฝ์šฐ "ํ•ฉ๊ฒฉ", ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ "๋ถˆํ•ฉ๊ฒฉ"์ด๋ผ๋Š” ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋„๋ก IF ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

SELECT
    ํ•™์ƒ๋ช…,
    ์„ฑ์ ,
    IF(์„ฑ์  >= 60, 'ํ•ฉ๊ฒฉ', '๋ถˆํ•ฉ๊ฒฉ') AS ํ•ฉ๊ฒฉ์—ฌ๋ถ€
FROM
    ์„ฑ์ ํ‘œ;

์œ„์˜ ์˜ˆ์ œ์—์„œ๋Š” ์„ฑ์ ์ด 60 ์ด์ƒ์ธ ๊ฒฝ์šฐ์—๋Š” 'ํ•ฉ๊ฒฉ', ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ์—๋Š” '๋ถˆํ•ฉ๊ฒฉ'์ด๋ผ๋Š” ๊ฐ’์„ ํ•ฉ๊ฒฉ์—ฌ๋ถ€ ํ•„๋“œ์— ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. IF ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‘ ๊ฐ€์ง€ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ฃผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

IF ํ•จ์ˆ˜๋Š” ๊ฐ„๋‹จํ•œ ์กฐ๊ฑด์„ ์ฒ˜๋ฆฌํ•  ๋•Œ ์œ ์šฉํ•˜๋ฉฐ, ๋…ผ๋ฆฌ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์กฐ๊ฑด์„ ์กฐํ•ฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์— ๋”ฐ๋ผ ์กฐ๊ฑด์‹์˜ ํ‰๊ฐ€ ๋ฐฉ์‹์ด๋‚˜ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ด ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์œผ๋‹ˆ, ๋ฌธ์„œ๋‚˜ ์˜ˆ์ œ๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ ์‚ฌ์šฉํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

4. CASE WHEN๊ณผ IF ํ•จ์ˆ˜์˜ ๋น„๊ต

CASE WHEN ํ•จ์ˆ˜์™€ IF ํ•จ์ˆ˜๋Š” ๋ชจ๋‘ ์กฐ๊ฑด์— ๋”ฐ๋ผ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์กฐ๊ฑด์‹์ž…๋‹ˆ๋‹ค. ๋‘ ํ•จ์ˆ˜ ๋ชจ๋‘ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€๋งŒ, ์กฐ๊ธˆ์”ฉ ๋‹ค๋ฅธ ์‚ฌ์šฉ๋ฒ•๊ณผ ๋ชฉ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ๋ฒ• ๋น„๊ต

  • CASE WHEN ํ•จ์ˆ˜๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์กฐ๊ฑด์„ ํ‰๊ฐ€ํ•˜๊ณ , ์ฒซ ๋ฒˆ์งธ๋กœ true์ธ ๊ฒฝ์šฐ์— ํ•ด๋‹นํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์กฐ๊ฑด๊ณผ ๊ฒฐ๊ณผ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ELSE ํ‚ค์›Œ๋“œ๋ฅผ ํ†ตํ•ด ๋ชจ๋“  ์กฐ๊ฑด์ด false์ธ ๊ฒฝ์šฐ์— ๋ฐ˜ํ™˜ํ•  ๊ฒฐ๊ณผ๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • IF ํ•จ์ˆ˜๋Š” ๋‹จ์ˆœํ•œ ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‘ ๊ฐ€์ง€ ๊ฒฐ๊ณผ ์ค‘ ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์–ด์ง„ ์กฐ๊ฑด์„ ํ‰๊ฐ€ํ•˜๊ณ , ์กฐ๊ฑด์ด true์ธ ๊ฒฝ์šฐ true์ผ ๋•Œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ์กฐ๊ฑด์ด false์ธ ๊ฒฝ์šฐ false์ผ ๋•Œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๋ชฉ์  ๋น„๊ต

  • CASE WHEN ํ•จ์ˆ˜๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์กฐ๊ฑด์„ ์ฒ˜๋ฆฌํ•˜๊ณ , ๊ฐ ์กฐ๊ฑด๋งˆ๋‹ค ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ’์„ ์ •์˜ํ•˜๋Š”๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ์กฐ๊ฑด์„ ์กฐํ•ฉํ•˜์—ฌ ๋ณต์žกํ•œ ๋กœ์ง์„ ์ฒ˜๋ฆฌํ•  ๋•Œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.

  • IF ํ•จ์ˆ˜๋Š” ๋‹จ์ˆœํ•œ ์กฐ๊ฑด๋ฌธ์„ ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์–ด์ง„ ์กฐ๊ฑด์„ ํ‰๊ฐ€ํ•˜๊ณ , ๋‘ ๊ฐ€์ง€ ๊ฒฐ๊ณผ ์ค‘์—์„œ ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฏ€๋กœ ๊ฐ„๋‹จํ•œ ์กฐ๊ฑด์„ ์ฒ˜๋ฆฌํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.

์„ ํƒ ๊ธฐ์ค€

์–ด๋–ค ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ• ์ง€ ์„ ํƒํ•˜๋Š” ๊ธฐ์ค€์€ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋‚˜ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ, ํ•„์š”๋กœ ํ•˜๋Š” ๊ธฐ๋Šฅ์— ๋”ฐ๋ผ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋ณต์žกํ•œ ์กฐ๊ฑด์„ ๋‹ค๋ฃจ๊ณ ์ž ํ•  ๋•Œ๋Š” CASE WHEN ํ•จ์ˆ˜๊ฐ€ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์กฐ๊ฑด๊ณผ ๊ฒฐ๊ณผ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๊ณ , ๋‹ค์–‘ํ•œ ๋กœ์ง์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ฐ„๋‹จํ•œ ์กฐ๊ฑด์„ ์ฒ˜๋ฆฌํ•˜๊ณ ์ž ํ•  ๋•Œ๋Š” IF ํ•จ์ˆ˜๊ฐ€ ํŽธ๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ๋‘ ๊ฐ€์ง€ ๊ฒฐ๊ณผ ์ค‘ ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฏ€๋กœ, ๋‹จ์ˆœํ•œ ์กฐ๊ฑด์— ๋Œ€ํ•ด์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ, ์‚ฌ์šฉํ•˜๋Š” ํ™˜๊ฒฝ๊ณผ ๊ธฐ๋Šฅ์— ๋งž๊ฒŒ CASE WHEN ํ•จ์ˆ˜์™€ IF ํ•จ์ˆ˜๋ฅผ ์„ ํƒํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

5. ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜์˜ ํ™œ์šฉ์‚ฌ๋ก€ ๋ฐ ์žฅ์ 

์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜์ธ CASE WHEN๊ณผ IF๋Š” ๋‹ค์–‘ํ•œ ์ƒํ™ฉ์—์„œ ์œ ์šฉํ•˜๊ฒŒ ํ™œ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋“ค ํ•จ์ˆ˜์˜ ํ™œ์šฉ ์‚ฌ๋ก€์™€ ์žฅ์ ์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

ํ™œ์šฉ ์‚ฌ๋ก€

  • ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ: ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋Š” ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ์‹œ ์œ ์šฉํ•˜๊ฒŒ ํ™œ์šฉ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฐ์ดํ„ฐ ํ•„ํ„ฐ๋ง์ด๋‚˜ ๋ณ€ํ™˜ ์ž‘์—… ๋“ฑ์—์„œ ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋…ผ๋ฆฌ์ ์ธ ์—ฐ์‚ฐ: ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์กฐ๊ฑด์„ ์กฐํ•ฉํ•˜๊ฑฐ๋‚˜ ๋…ผ๋ฆฌ์ ์ธ ๋น„๊ต๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ํŠน์ • ์กฐ๊ฑด์ด ์ถฉ์กฑ๋  ๋•Œ A๊ฐ’์„, ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ B๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋“ฑ์˜ ์ž‘์—…์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

  • ๊ฒฐ๊ณผ ์˜ˆ์ธก: ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ ์˜ˆ์ธกํ•˜๊ณ , ํŠน์ • ์ƒํ™ฉ์— ๋Œ€์ฒ˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์„ฑ์ ์ด ์ผ์ • ๊ธฐ์ค€ ์ด์ƒ์ธ ํ•™์ƒ์„ ์„ ๋ฐœํ•˜๋Š” ์ž‘์—…์—์„œ ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ ๋ฐœ ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์žฅ์ 

  • ์œ ์—ฐ์„ฑ: ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋Š” ๋‹ค์–‘ํ•œ ์กฐ๊ฑด์„ ํ‰๊ฐ€ํ•˜๊ณ , ๊ทธ์— ๋”ฐ๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•  ์ˆ˜ ์žˆ์–ด ๋งค์šฐ ์œ ์—ฐํ•ฉ๋‹ˆ๋‹ค. ๋ณต์žกํ•œ ๋กœ์ง์„ ์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๊ณ , ๋‹ค์–‘ํ•œ ์กฐ๊ฑด์„ ์กฐํ•ฉํ•˜์—ฌ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ฐ€๋…์„ฑ: ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋Š” ์ฝ”๋“œ๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , ๋กœ์ง์˜ ๋ชฉ์ ์„ ๋ช…ํ™•ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฝ๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ณ , ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์šฉ์ดํ•ฉ๋‹ˆ๋‹ค.

  • ์žฌ์‚ฌ์šฉ์„ฑ: ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋Š” ๋ฐ˜๋ณต์ ์œผ๋กœ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋™์ผํ•œ ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋ฅผ ์—ฌ๋Ÿฌ ์ฟผ๋ฆฌ๋‚˜ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์žฌํ™œ์šฉํ•  ์ˆ˜ ์žˆ์–ด ํšจ์œจ์ ์ธ ๊ฐœ๋ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉํ•˜๋Š” ์ƒํ™ฉ์— ๋”ฐ๋ฅธ ์„ ํƒ

์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์ฃผ์–ด์ง„ ์ƒํ™ฉ๊ณผ ์š”๊ตฌ์‚ฌํ•ญ์— ๋”ฐ๋ผ ์•Œ๋งž์€ ํ•จ์ˆ˜๋ฅผ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • CASE WHEN ํ•จ์ˆ˜๋Š” ๋ณต์žกํ•œ ์กฐ๊ฑด ์ฒ˜๋ฆฌ์— ์œ ์šฉํ•˜๋ฉฐ, ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์กฐ๊ฑด๊ณผ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์กฐ๊ฑด์ด ๋งŽ๊ณ  ์ฒ˜๋ฆฌํ•ด์•ผ ํ•  ๋กœ์ง์ด ๋ณต์žกํ•œ ๊ฒฝ์šฐ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

  • IF ํ•จ์ˆ˜๋Š” ๋‹จ์ˆœํ•œ ์กฐ๊ฑด ์ฒ˜๋ฆฌ์— ์œ ์šฉํ•˜๋ฉฐ, ๋‘ ๊ฐ€์ง€ ๊ฒฐ๊ณผ ์ค‘ ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฐ„๋‹จํ•œ ์กฐ๊ฑด๋ฌธ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ณ  ๋ช…ํ™•ํ•˜๊ฒŒ ์ž‘์„ฑํ•˜๊ณ ์ž ํ•  ๋•Œ ํ™œ์šฉ๋ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ, ์กฐ๊ฑด๋ฌธ ํ•จ์ˆ˜๋Š” ์œ ์—ฐํ•˜๊ณ  ๊ฐ€๋…์„ฑ์ด ์ข‹์œผ๋ฉฐ ์žฌ์‚ฌ์šฉ์„ฑ์ด ๋†’์€ ํŠน์ง•์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ ์ ˆํ•œ ํ•จ์ˆ˜๋ฅผ ์„ ํƒํ•˜์—ฌ ๊ฐœ๋ฐœํ•˜๋ฉด, ํšจ์œจ์ ์ด๊ณ  ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์šฉ์ดํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋Œ“๊ธ€