๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
SQL/Programmers

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค][SQL-SELECT] ํ‰๋ถ€์™ธ๊ณผ ๋˜๋Š” ์ผ๋ฐ˜์™ธ๊ณผ ์˜์‚ฌ ๋ชฉ๋ก ์ถœ๋ ฅํ•˜๊ธฐ

by ์ด๋ฎด 2023. 7. 3.
728x90

๐Ÿ’ป ๋ฌธ์ œ ์ฃผ์†Œ : https://school.programmers.co.kr/learn/courses/30/lessons/132203

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

 

๐Ÿ’ป ๋ฌธ์ œ ์„ค๋ช…

๋‹ค์Œ์€ ์ข…ํ•ฉ๋ณ‘์›์— ์†ํ•œ ์˜์‚ฌ ์ •๋ณด๋ฅผ ๋‹ด์€ DOCTOR ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค. DOCTOR ํ…Œ์ด๋ธ”์€ ๋‹ค์Œ๊ณผ ๊ฐ™์œผ๋ฉฐ DR_NAME, DR_ID, LCNS_NO, HIRE_YMD, MCDP_CD, TLNO๋Š” ๊ฐ๊ฐ ์˜์‚ฌ์ด๋ฆ„, ์˜์‚ฌID, ๋ฉดํ—ˆ๋ฒˆํ˜ธ, ๊ณ ์šฉ์ผ์ž, ์ง„๋ฃŒ๊ณผ์ฝ”๋“œ, ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

Column name Type Nullable
DR_NAME VARCHAR(20) FALSE
DR_ID VARCHAR(10) FALSE
LCNS_NO VARCHAR(30) FALSE
HIRE_YMD DATE FALSE
MCDP_CD VARCHAR(6) TRUE
TLNO VARCHAR(50) TRUE

 

๐Ÿ’ป ๋ฌธ์ œ

DOCTOR ํ…Œ์ด๋ธ”์—์„œ ์ง„๋ฃŒ๊ณผ๊ฐ€ ํ‰๋ถ€์™ธ๊ณผ(CS)์ด๊ฑฐ๋‚˜ ์ผ๋ฐ˜์™ธ๊ณผ(GS)์ธ ์˜์‚ฌ์˜ ์ด๋ฆ„, ์˜์‚ฌID, ์ง„๋ฃŒ๊ณผ, ๊ณ ์šฉ์ผ์ž๋ฅผ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๊ฒฐ๊ณผ๋Š” ๊ณ ์šฉ์ผ์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•˜๊ณ , ๊ณ ์šฉ์ผ์ž๊ฐ€ ๊ฐ™๋‹ค๋ฉด ์ด๋ฆ„์„ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”.

 

๐Ÿ’ป ์ฝ”๋“œ ๋ฐ ํ’€์ด

select DR_NAME, DR_ID, MCDP_CD, date_format(hire_ymd, '%Y-%m-%d') HIRE_YMD 
-- ๊ณ ์šฉ์ผ์ž ์ถœ๋ ฅ ํ˜•์‹ ๋ณ€ํ™˜ ex. 2022-01-14
from doctor
where mcdp_cd in ('CS', 'GS')
order by hire_ymd desc, dr_name

 

์œ„ ์ฝ”๋“œ๋Š” ๊ธฐ์กด๊นŒ์ง€ ํ’€์—ˆ๋˜ ๋ฌธ์ œ์™€ ํฌ๊ฒŒ ๋‹ค๋ฅผ ๋ฐ”๊ฐ€ ์—†๊ธด ํ•˜๋‚˜ ์ด์ค‘ where ์ ˆ์— ์žˆ๋Š” in์„ ์‚ดํŽด๋ณด๋„๋ก ํ•˜์ž.

 

in()์€ (~) ์•ˆ์— ์žˆ๋Š” ๊ฐ’ ์ค‘ ํ•˜๋‚˜์™€ ์ผ์น˜ํ•˜๋Š” ๋ ˆ์ฝ”๋“œ๊ฐ€ ์žˆ๋Š”์ง€๋ฅผ ํ™•์ธํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ์—ฌ๋Ÿฌ ๊ฐ’์„ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋œ๋‹ค. ์•„๋ž˜ ์ฝ”๋“œ๋Š” ๊ฒฐ๊ตญ mcdp_cd ๊ฐ’์ด ๋ฌธ์ œ ์กฐ๊ฑด์ฒ˜๋Ÿผ 'CS' ์ด๊ฑฐ๋‚˜ 'GS'์ธ ๋ ˆ์ฝ”๋“œ๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•œ ๊ตฌ๋ฌธ์ด๋ผ ํ•ด์„ํ•  ์ˆ˜ ์žˆ๋‹ค.

where mcdp_cd in ('CS', 'GS')

 

 ์ด๋•Œ in์€ or๋กœ ๋Œ€์‹  ํ’€์–ด์„œ ์“ธ ์ˆ˜๋„ ์žˆ๋‹ค. ๋‹ค๋งŒ ์ด ๊ฒฝ์šฐ์—๋Š” ์ฐพ๊ณ ์ž ํ•˜๋Š” ๊ฐ’ํ•˜๊ณ  ๊ณ„์†ํ•ด์„œ ๋น„๊ต๋ฅผ ํ•ด์ค˜์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— in์— ๋น„ํ•ด ์†๋„๊ฐ€ ๋А๋ ค์ง„๋‹ค.

728x90
๋ฐ˜์‘ํ˜•