본문 바로가기
SQL

[solvesql - day 7] 기증품 비율 계산하기

by 우솨 2025. 1. 10.

https://solvesql.com/problems/ratio-of-gifts/

 

https://solvesql.com/problems/ratio-of-gifts/

 

solvesql.com

-- 'artworks' 테이블에서 'gift'와 관련된 작품의 비율을 계산
SELECT 
    ROUND(
        -- 'credit' 컬럼에 'gift'라는 단어가 포함된 작품의 개수를 
        -- 전체 작품의 개수로 나누고 100을 곱하여 비율을 계산
        COUNT(CASE WHEN credit LIKE '%gift%' THEN 1 END) * 100.0 / COUNT(*), 3
        -- COUNT(CASE WHEN credit LIKE '%gift%' THEN 1 END) : 
        -- 'credit' 컬럼에서 'gift'가 포함된 값을 찾아 해당하는 작품 수를 셈
        -- COUNT(*) : 'artworks' 테이블에서 총 작품 수를 셈
        -- 100.0 : 비율을 퍼센트로 계산하기 위해 100을 곱함
        -- ROUND(..., 3) : 계산된 비율을 소수점 3자리까지 반올림하여 출력
    ) AS ratio  -- 계산된 비율을 'ratio'라는 이름으로 출력
FROM 
    artworks    -- 'artworks' 테이블에서 데이터를 조회