inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

데이터 분석 SQL Fundamentals

순위 Analytic SQL 실습 - 02

강사님 Analytic을 사용하는 이유가 뭔가요?

해결된 질문

428

cjh

작성한 질문수 24

0

Analyric을 사용할때 많은 데이터나 필요한 함수가 많아지면 서브쿼리나 with절을 많이 사용해야할거같은데

 

데이터가 많아지면 복잡한 쿼리를 작성할때 부담스러울거같다는 생각이 들더라구요

차라리 필요한 데이터만 가지고 엑셀로 작업하는게

더 빠르고 엑셀이 가진 GUI를 활용하는게 나을거같다는 생각도 들더라구요

 

그런데 DB만 검색해봐도 윈도우 함수는 공부하는게 좋다, 이런 이야기가 많은데

그 장점이 뭔지 궁금합니다.

sql postgresql dbms/rdbms

답변 2

2

권 철민

안녕하십니까,

analytic/window 함수는 반드시 익히시는게 좋습니다.

analytic 함수는 SQL에서 analytic을 매우 효율적으로 수행할 수 있을 뿐만 아니라, Group by와 같이 집합의 레벨을 변화 시키지 않고도 특정 순위/aggregation 레벨로 집합을 필터링 시킬 수 있습니다.

과거(한 15년전?)에는 analytic 함수를 배우는게 고급(?) 기술이었지만, 이제는 SQL을 이용하면 analytic 함수의 활용은 (개인적인 의견으로는) 거의 필수라고 생각합니다

analytic SQL은 분석용, 배치, ETL등의 작업에 필수적으로 활용됩니다. 상대적으로 OLTP 영역에서는 활용이 적을 수도 있지만, OLTP에서도 SQL을 쫌~ 사용한다는 사람들은 다 Analytic SQL을 어느 정도는 사용할 능력을 갖추고 있습니다.

데이터 분석시 Excel을 사용해도 되지만, Excel은 대량 데이터를 처리할 수가 없습니다. 과거에는 몇만건(6만 얼마인 걸로 기억합니다만 정확하진 않습니다) 이상의 데이터는 메모리등의 이슈로 Excel로 처리할 수가 없었습니다. 물론 지금은 Power Query가 Excel에 도입되어서 과거에는 다르지만, 여전히 몇십만건 이상의 데이터 처리는 어렵습니다. 개인 PC의 메모리와 CPU 용량 문제도 있지만, 데이터 처리가 RDBMS보다 많이 느리다고 보시면 됩니다.

또한 Excel을 이용하면 원하는 데이터를 가공하기가 어렵습니다. SQL은 조인, 서브쿼리, Group by 등으로 원하는 집합을 기업내의 많은 테이블에서 취합, 가공, 필터링 할 수 있지만 엑셀은 조인을 해서 새로운 데이터를 만들려면 많은 작업을 수행해야 합니다.

Excel을 분석에 사용하지 않는건 아니지만, SQL에 익숙해지면, 분석작업의 생산성이 높아지고, Excel에 대한 의존도가 현저히 낮아질 수 밖에 없습니다. SQL과 Analytic 함수는 그만큼 편리하고 빠르게 분석 작업을 수행할 수 있는 훌륭한 기술입니다.

감사합니다.

 

0

cjh

감사합니다 !

강사님 덕분에 회사에서 쿼리 작성할때 강사님이 읊어주신걸 떠올리면서 작성하려고 노력합니다,

그리고 사수님이 덤으로 조언을 해주시면서 조금씩 어려운 쿼리를 작성해보고 있습니다.

남은 강의도 열심히 듣겠습니다. 감사합니다

0

KoKuMa

왜 sql을 공부해야 하는지 좋은 조언이네요. 현업에서도 실시간 으로 앱에서 들어오는 몇만 건의 데이터를 처리해야 해서 엑셀의 한계를 많이 느낍니다.

'레벨 유지'의 의미에 대한 질문

0

53

2

date_part

0

56

2

lag/lead offset 관련 질문

0

56

2

join 관련 질문 (inner join, left join)

1

101

2

배치에서 full outer join을 쓴다고 하셨는데 예시를 알 수 있을까요?

0

90

2

Madrid에 살고 있는 고객이 주문한 주문 정보를 구할것. 실습 질문드립니다

0

54

2

rollup시 null값 매출 라벨링

0

55

2

10. 조인 실습 - 02 관련 질문

0

60

1

조인실습03 - join의 pk-fk join

0

109

2

조인실습03 - join의 pk-fk join

0

69

2

(공유)맥, 스키마 import

0

81

2

sql 입문자인데, 이 강의와 sql 코딩테스트와 연관이 있을까요?

0

138

2

1인지 M인지는 결국엔 테이블을 직접 확인을 해야 하는걸까요?

0

132

2

안녕하세요. 튜닝핵심가이드강의 관련해서 여쭤보고 싶어서 남깁니다.

0

91

1

섹션5 Group by 실습-01 강의 예제 질문

0

119

2

섹션2 조인 기반 메커니즘에서 조인 실습 - 04 강의 예제 질문

0

125

2

섹션2 조인 실습 01 강의 질문

0

134

2

lead lag 이해 강의에서 윈도우 절은 사용되지 않습니다.

0

128

1

Dbeaver오류

0

631

2

직원 별 가장 높은 매출

0

119

1

강의순서대로 실습코드순알려주세요.

0

134

1

m:n inner join일 경우 cross조인과 동일하게 동작되는건가요?

0

131

1

rollup

0

91

2

Dbeaver에 접속해도 postgressql이 네비게이터에 안보입니다.

0

355

2