Maison > Questions et réponses > le corps du texte
黄舟2017-04-17 15:40:08
其实最好写明你的表结构,以下答案基于你提供的有限信息:
select district as 行政区
,count(1) as 小区数 -- 我默认你每个小区时一条记录,且无重复
, sum(if(idNB = 1 ,1 ,0)) as 高档小区数 -- 假设高档小区的idNB标记为1
from table_name
group by district
其实 sum(if(idNB = 1 ,1 ,0)) 也可以替换成count(idNB = 1 or null)
阿神2017-04-17 15:40:08
mysql不支持分析函数:
select t1.district,
(select count(t2.xiaoqu) from table t2 where t2.district=t1.district) count_xiaoqu,
(select count(t2.idNB) from table t2 where t2.district=t1.district) count_idNB
from table t1
分析函数的写法:
select district,
count(xiaoqu) over (district) count_xiaoqu,
count(idNB) over (district) count_idNB
from table
巴扎黑2017-04-17 15:40:08
我这边说下我的思路吧,使用MySQL将区内的高端小区和非高端小区统计出来
select district,idNB,count(*) from xx GROUP BY district,idNB
然后区内小区的总数再由服务端这边自己处理计算。