강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

Danny님의 프로필 이미지
Danny

작성한 질문수

스파크 머신러닝 완벽 가이드 - Part 1

Spark DataFrame에 when을 적용하여 조건별로 데이터 처리하기

window 함수가 궁금합니다

작성

·

239

0

window 함수를 개발자들이 많이 사용을 하는데 rangeBetween과 rowBetween에 대해서 설명을 해주시면 감사하겠습니다.

 

답변 1

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까, 

음, 이걸 설명드리기에는 Q&A 게시판에서 한참을 적어야 할 것 같습니다만, 

중요한 차이만 말씀드리면

먼저 range between과 rows between은 거의 비슷합니다.  다만 range는 논리적 개념의 windows 범위 설정이 가능하며 rows는 물리적 개념의 window 범위 설정만 가능합니다. 

가령 range는 interval과 결합하여 Date/Datetime 범위를 논리적으로 인식해서 window를 설정할 수 있습니다. 

range/rows가 차이를 보이는 또 하나는

window함수의 order by 절에 사용된 컬럼값이 동일할 경우 서로 처리하는 범위가 달라집니다. 

사례를 보여 드리면서 하면 좋은데 Q&A 게시판의 제약(?)이 있는 관계로 핵심 사항만 말씀 드려야 할 것 같습니다.  자세한 사례는 아래 URL 참조 부탁드립니다. 

https://learnsql.com/blog/difference-between-rows-range-window-functions/

 

감사합니다. 

Danny님의 프로필 이미지
Danny
질문자

안녕하세요.

보내 주신 링크를 보면서 곰곰히 생각니까 이해가 되었습니다, 실제로 사용하기 위해서는 연습을 해봐야 할 것 같습니다, 해당 사이트에 cheet sheet도 유용한것 같습니다.

감사합니다.

https://learnsql.com/blog/sql-window-functions-cheat-sheet/Window_Functions_Cheat_Sheet.pdf

Danny님의 프로필 이미지
Danny

작성한 질문수

질문하기