문제
SQLite
내가 작성한 오답1


내가 작성한 오답2
: count()는 “null이 아닌 값”의 개수를 셈
→ 게임이 Sony 계열 플랫폼 3개(PS3, PS4, PSV)에 나왔으면 count 값이 3이 됨.
→ distinct 계열 수를 세야 함
select g.name
from games g
join platforms p
on g.platform_id = p.platform_id and p.name in ('PS3', 'PS4', 'PSP', 'PSV','Wii', 'WiiU', 'DS', '3DS','X360', 'XONE')
where year >= 2012
group by g.name
having count(
case when p.name in ('PS3', 'PS4', 'PSP', 'PSV') then 'Sony'
when p.name in ('Wii', 'WiiU', 'DS', '3DS') then 'Nintendo'
when p.name in ('X360', 'XONE') then 'Microsoft' end ) >= 2내가 작성한 정답
select g.name
from games g
join platforms p
on g.platform_id = p.platform_id and p.name in ('PS3', 'PS4', 'PSP', 'PSV','Wii', 'WiiU', 'DS', '3DS','X360', 'XONE')
where year >= 2012
group by g.name
having count(distinct
case when p.name in ('PS3', 'PS4', 'PSP', 'PSV') then 'Sony'
when p.name in ('Wii', 'WiiU', 'DS', '3DS') then 'Nintendo'
when p.name in ('X360', 'XONE') then 'Microsoft' end ) >= 2;Share article