하 이브 실천 (2)
2750 단어 빅 데이터
select province, count(*) from `user` group by province;
select count(*) from `user`;
설명: 아래 문장의 round (d, n) 는 double 형식의 d 숫자 를 n 자리 작은 숫자 로 유지 합 니 다.
select p.province, round(p.puser / u.totaluser, 4) from
(select count(*) as puser from `user` group by province) p,
(select count(*) as totaluser from `user`) u;
마지막 문장:
select t2.provincename, concat(round(t1.rate * 100, 2),'%')
from (select p.province, p.puser / u.totaluser as rate
from (select province, count(*) as puser from `user` group by province) p,
(select count(*) as totaluser from `user`) u order by rate desc) t1
join provinces t2 on t1.province=t2.province;
미 션 2: 밤 (20: 00 - 24: 00) 에 웨 이 보 를 보 내 는 사용자 비율 을 좋아 합 니 다.설명: 만약 에 한 사용자 가 밤 에 웨 이 보 를 보 내 는 수량 이 다른 시간의 웨 이 보 수량 보다 많 으 면 그 / 그녀 는 밤 에 웨 이 보 를 보 내 는 것 을 좋아한다 고 정의 한다.
총 미약 한 사용자 수:
select count(distinct uid) from weekly;
select count(*) from weekly group by uid,
(hour(created_at) >=20 or hour(created_at) <= 24) as h;
select count(*) from weekly where hour(created_at) >=20 or
hour(created_at) <= 24;
select a.cnt / b.cnt from (select count(*) as cnt from
weekly where hour(created_at) >=20 or hour(created_at) <=
24) a, (select count(*) as cnt from weekly) b;
퀘 스 트 3: 대 V 사용자 의 남녀 성 비.설명: V 는 '인 증 된' 의 약칭, 즉 'userdata. csv' 파일 의 verified 필드 입 니 다.
select gender, count(*) from `user` where verified=true
group by verified, gender;
select a.cnt from (select gender, count(*) as cnt from
`user` where verified=true group by verified, gender) a
where a.gender='f' ;
select a.cnt from (select gender, count(*) as cnt from
`user` where verified=true group by verified, gender) a
where a.gender='m' ;
select count(*) from `user` where verified=true;
select round(f.cnt / c.cnt, 4), round(m.cnt / c.cnt, 4)
from
(select a.cnt as cnt from (select gender, count(*) as cnt
from `user` where verified=true group by verified,
gender) a
where a.gender='f') f,
(select a.cnt as cnt from (select gender, count(*) as cnt
from `user` where verified=true group by verified, gender)
a
where a.gender='m') m,
(select count(*) as cnt from `user` where verified=true) c;
작업 4: 가장 주 목 받 는 상위 5 명의 사용자 ID.설명: 총 리 트 윗 수가 많은 사용 자 는 더욱 주 목 받 는 사용자 로 정의 합 니 다.
select retweeted_uid, count(*) as cnt from weekly where
retweeted_uid !='' group by retweeted_uid order by cnt
desc limit 5;
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
spark 의 2: 원리 소개Google Map/Reduce 를 바탕 으로 이 루어 진 Hadoop 은 개발 자 에 게 map, reduce 원 어 를 제공 하여 병렬 일괄 처리 프로그램 을 매우 간단 하고 아름 답 게 만 들 었 습 니 다.S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.