
👉 문제 바로가기 : solvesql - Advent of SQL 2024 DAY 18
저작권 문제로 링크만 첨부한다.
수학연산을 sql함수를 이용하여 구현할 수 있어야 한다.
문법을 준수하면서 수학공식의 구조를 갖추게 하는 기본기 문제.

WITH variables AS (
SELECT
species
, flipper_length_mm "x"
, avg(flipper_length_mm) OVER(PARTITION BY species) "xbar"
, body_mass_g "y"
, avg(body_mass_g) OVER(PARTITION BY species) "ybar"
FROM
penguins
)
SELECT
species
, round(
sum((x-xbar) * (y-ybar))
/
(
sqrt(sum(pow(x-xbar, 2)))
*
sqrt(sum(pow(y-ybar, 2)))
)
, 3
) "corr"
FROM
variables
GROUP BY
species
;