๐Ÿ“ ์•Œ๊ณ ๋ฆฌ์ฆ˜/Programmers - SQL

[MySQL/PGS] Lv.3 : ๋Œ€์žฅ๊ท ๋“ค์˜ ์ž์‹์˜ ์ˆ˜ ๊ตฌํ•˜๊ธฐ

xxilliant 2025. 5. 7. 15:37
728x90
๋ฐ˜์‘ํ˜•

https://school.programmers.co.kr/learn/courses/30/lessons/299305

 

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

SW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก, ์ฑ„์šฉ๊นŒ์ง€ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„

programmers.co.kr


ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ ˆ๋ฒจ 3.

์˜ค๋žœ๋งŒ์— sql ํ‘ธ๋‹ˆ๊นŒ ์ƒ๊ฐ๋ณด๋‹ค ์–ด๋ ต๋‹ค..ใ…‹.ใ…‹

mysql left join, if ~ is null, ์„œ๋ธŒ์ฟผ๋ฆฌ ๋“ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ–ˆ๋‹ค.

 

๋‚˜์˜ ํ’€์ด

select a.ID,
    if(b.CHILD_COUNT is null, 0, b.CHILD_COUNT) as CHILD_COUNT
from ecoli_data a 
    left join (select PARENT_ID, count(*) as CHILD_COUNT 
            from ecoli_data
            where PARENT_ID is not null
            group by parent_id) b on a.ID = b.PARENT_ID;
728x90
๋ฐ˜์‘ํ˜•