[PostgreSQL] group by: rollup
rollup์ group by์ ๋ถ๊ฐ๊ธฐ๋ฅ์ผ๋ก, ์๊ณ๋ฅผ ๊ตฌํ ๋ ์ฌ์ฉํ๋ค.
๊ทผ๋ฐ ๋ญ ๊ทธ๋ฆฌ ์์ฃผ ์ธ๋งํ ๊ธฐ๋ฅ์ ์๋๋ค.
๊ทธ๋ฃนํด์ aggreate ์ฐ์ฐ์ ํ ๊ฒ์ ๋ํด์ ๋ค์ aggreate ์ฐ์ฐ์ ํ๊ณ , ๊ทธ๊ฑธ ๋ณ๊ฐ์ ํ์ผ๋ก ๋ฐํํด์ฃผ๋ ๊ฒ์ด๋ค.
๊ฐ๋ น, ๋ค์๊ณผ ๊ฐ์ ํ ์ด๋ธ๊ณผ ๋ฐ์ดํฐ๊ฐ ์์๋

์ฌ๋๋ง๋ค์ number ์ดํฉ์ ๊ตฌํ๋ค๋ฉด ์ด๋ ๊ฒ ํ ์ ์์ ๊ฒ์ด๋ค.

๊ทธ๋ฐ๋ฐ ์ ๊ธฐ์ ๋ ์ฌ๋๋ง๋ค sumํ ๊ฐ์ ๋ค์ ํฉ์น๊ณ ์ถ์ผ๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ ๊น?
๊ทธ๋ฃน์ ํ๋ฒ ๋ ๊ฑฐ๋ ๋ฐฉ๋ฒ๋ ์์ง๋ง, rollup์ ์ฌ์ฉํ ์๋ ์๋ค.
rollup์ ๋์ฒด๋ก ๋ค์๊ณผ ๊ฐ์ด ๊ทธ๋ฃน์กฐ๊ฑด์ rollup์ ์์ฐ๋ ํํ๋ก ์ฌ์ฉ๋๋ค.
๊ทธ๋ผ ์ง๊ณํ ๊ฐ์ ๋ํด์ ๋ค์ ์ง๊ณ๋ฅผ ํ ๊ฐ์ ์ ํ์ผ๋ก ์ถ๊ฐํด์ ๋ฐํํด์ค๋ค.
์ง๊ณ๊ฐ ์ด์ธ์ ๋๋จธ์ง๋ null๋ก ์ฑ์ด๋ค.
๊ทผ๋ฐ ์ด๊ฒ ์ข... ์์
์ค๋ฌ์ด ๊ธฐ๋ฅ์ด๋ผ ์ผ๋ฐ์ ์ธ ๋ก์ง์ ์ ์ฉํ๊ธฐ์ ์ ๋งคํ ๋ถ๋ถ์ด ๋ณด์ธ๋ค.
๋ณ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ต์ง๋ก ํ์ ์ฐ๊ฒจ๋ฃ๋ ๊ฒ์ด๊ธฐ๋ ํ๊ณ .
์ฐธ์กฐ
https://dog-developers.tistory.com/152
https://www.postgresqltutorial.com/postgresql-rollup/
https://www.postgresql.org/docs/9.5/sql-select.html