hive 창 열기 함수 전체
2643 단어 hive
SELECT
cookieid,
createtime,
pv,
SUM(pv) OVER(PARTITION BY cookieid ORDER BY createtime) AS pv1,
SUM(pv) OVER(PARTITION BY cookieid ORDER BY createtime ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS pv2,
SUM(pv) OVER(PARTITION BY cookieid ORDER BY createtime ROWS BETWEEN 1 PRECEDING AND 3 FOLLOWING) AS pv3,
SUM(pv) OVER(PARTITION BY cookieid ORDER BY createtime ROWS BETWEEN CURRENT ROW AND 4 FOLLOWING) AS pv4
FROM lxw1234;
-- 창 함수 rownumber,ntile,rank,dense_rank(rows between 지원되지 않음) - rownumber 그룹 랭킹,ntile 슬라이드,rank 그룹 랭킹 공백,denserank 그룹 랭킹 비움
SELECT
cookieid,
createtime,
pv,
ROW_NUMBER() OVER(PARTITION BY cookieid ORDER BY createtime) AS rn,-- , , createtime
NTILE(3) OVER(PARTITION BY cookieid ORDER BY createtime) AS rn1,-- 3 ,
RANK() OVER(PARTITION BY cookieid ORDER BY createtime) AS rn2,-- , ,
DENSE_RANK() OVER(PARTITION BY cookieid ORDER BY createtime) AS rn3 -- rank
FROM lxw1234;
-- 창 함수 LAG, LEAD, FIRSTVALUE,LAST_VALUE - LAD는 통계 창의 세 번째 줄 수를 null로 하고 기본값으로 채우면 LEAD는 반대로 FIRSTVALUE는 현재 행의 첫 번째 값을 가져옵니다. LASTVALUE 가 현재 행의 마지막 값을 가져옴
SELECT
cookieid,
createtime,
pv,
LAG(createtime,1,'1970-01-01 00:00:00') OVER(PARTITION BY cookieid ORDER BY createtime) AS rn,
LEAD(createtime,3,'1970-01-01 00:00:00') OVER(PARTITION BY cookieid ORDER BY createtime) AS rn1,
FIRST_VALUE() OVER(PARTITION BY cookieid ORDER BY createtime) AS rn3,
LAST_VALUE() OVER(PARTITION BY cookieid ORDER BY createtime) AS rn4
FROM lxw1234;
-- 창 함수 CUMEDIST,PERCENT_RANK --CUME_DIST가 현재 값과 같은 줄 수/그룹 내 총 줄 수보다 작음, PERCENTRANK 그룹에서 현재 줄의 RANK 값 - 1/그룹에서 전체 줄 수 - 1
SELECT
cookieid,
createtime,
pv,
CUME_DIST() OVER(PARTITION BY cookieid ORDER BY createtime) AS rn,
PERCENT_RANK() OVER(PARTITION BY cookieid ORDER BY createtime) AS rn1
FROM lxw1234;
-- 창 함수 GROUPING SETS, GROUPING아이디, 큐브, 롤업-큐브는 GROUP BY의 차원의 모든 조합에 따라 집합한다. 롤업은 큐브의 서브집합으로 가장 왼쪽의 차원 위주로 이 차원에서 층층이 집합한다.GROUPING__아이디는 팀번호를 표시한다. 여기서 큐브와 롤업은 주의해야 한다. 롤업은 사실 큐브의 팀번호가 완성된 후에 등급 집합에 속하지 않는 것을 제거할 뿐이다.
SELECT
month,
day,
COUNT(DISTINCT cookieid) AS uv,
GROUPING__ID
FROM lxw1234
GROUP BY month,day
GROUPING SETS (month,day)
ORDER BY GROUPING__ID;
SELECT
month,
day,
COUNT(DISTINCT cookieid) AS uv,
GROUPING__ID
FROM lxw1234
GROUP BY month,day
WITH CUBE
ORDER BY GROUPING__ID;
SELECT
month,
day,
COUNT(DISTINCT cookieid) AS uv,
GROUPING__ID
FROM lxw1234
GROUP BY month,day
WITH ROLLUP
ORDER BY GROUPING__ID;
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Spark + HWC로 Hive 테이블을 만들고 자동으로 Metadata를 Atlas에 반영합니다.HDP 3.1.x의 경우 Spark + HWC에서 Hive 테이블을 만들고 자동으로 Metadata를 Atlas에 반영하는 방법이 있습니다. 방법: 전제조건: Hive Warehouse Connector (HWC) ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.