SQL:Group by

27 篇文章 4 订阅
23 篇文章 0 订阅

1.Group by 对数据进行分组,类似于Excel里的数据透视表

1.1

SELECT city,count(positionId),count(1),count(*)	 FROM data.dataanalyst
group by city

 

output:

上海979979979
北京234723472347
南京838383
厦门303030
天津202020
广州335335335
成都135135135
杭州406406406
武汉696969
深圳527527527
苏州373737
西安383838
长沙252525

1.2 distinct 唯一公司数目

SELECT city,count(positionId),count(distinct companyId)	 FROM data.dataanalyst
group by city

out:

上海979505
北京2347922
南京8346
厦门3025
天津2019
广州335209
成都13599
杭州406196
武汉6950
深圳527310
苏州3722
西安3829
长沙2519

 

1.3

SELECT city,education,count(1) FROM data.dataanalyst
group by city,education

out:

上海大专110
上海本科723
上海硕士75
上海不限68
上海博士3
北京本科1877
北京大专190
北京硕士154
北京博士2
北京不限124
南京本科61
南京大专11
南京不限5
南京硕士6
厦门本科18
厦门不限3
厦门大专7
厦门硕士2
天津本科15
天津不限1
天津大专4
广州本科232
广州大专84
广州不限12
广州硕士7
成都本科99
成都大专26
成都硕士2
成都不限8
杭州本科303
杭州大专58
杭州硕士19
杭州不限26
武汉不限10
武汉本科44
武汉大专14
武汉硕士1
深圳本科395
深圳硕士17
深圳大专94
深圳不限20
深圳博士1
苏州大专5
苏州本科29
苏州硕士3
西安本科24
西安不限3
西安大专10
西安硕士1
长沙本科15
长沙大专2
长沙不限7
长沙硕士1

 

1.4 having对数据过滤

SELECT city,count(1) FROM data.dataanalyst
group by city
having count(positionId)>=100

out:

上海979
北京2347
广州335
成都135
杭州406
深圳527

 

1.5找出电子商务岗位数量大于50的城市,并输出数量

SELECT city,count(1) FROM data.dataanalyst
where industryField like '%电子商务%'
group by city
having count(positionId) >= 50

 

out:

上海166
深圳84
杭州62
北京289
广州71

 

1.6求出不同城市里,电商占岗位的比例

SELECT
city,
count(1),
count(if(industryField like '%电子商务%',industryField,null)),
count(if(industryField like '%电子商务%',industryField,null))/count(1)
FROM data.dataanalyst
group by city

out:

上海9791660.1696
北京23472890.1231
南京83240.2892
厦门3030.1000
天津2040.2000
广州335710.2119
成都135370.2741
杭州406620.1527
武汉69170.2464
深圳527840.1594
苏州3720.0541
西安3840.1053
长沙2580.3200

 

1.7求出不同城市里,电商占岗位的比例,且电商数要大于等于10

#注意:SELECT里的除法不能直接替换

count(if(industryField like '%电子商务%',industryField,null))/count(1) 不等于emarket/total

SELECT
city,
count(1) as total,
count(if(industryField like '%电子商务%',industryField,null)) as emarket,
count(if(industryField like '%电子商务%',industryField,null))/count(1)
FROM data.dataanalyst
group by city
having emarket >= 10
order by emarket
武汉69170.2464
南京83240.2892
成都135370.2741
杭州406620.1527
广州335710.2119
深圳527840.1594
上海9791660.1696
北京23472890.1231
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值