读书人

关于大数据表的count(distinct)操作优

发布时间: 2012-12-30 10:43:15 作者: rapoo

关于大数据表的count(distinct)操作优化
有一个表
res_url
id time url 次数 流量 资源类型

每天产生一个URL一条记录 值分别是:时间\URL\访问次数\流量和\资源类型
一天的记录数大概是 50万条的数量级


不同天产生的URL有重复。


目的:查询范围为多天时要求出URL的记录数(如果能求出流量和及次数和更好)

简单说是select count(distinct url) from res_url
但这样查存在严重的性能瓶劲,主要是记录数过多了。distinct操作较慢,看看有没优化的方法。
[解决办法]
假设ID唯一,URL、ID上建立索引
select * from tt a where not exists(select 1 from tt where a.url=url and a.id>id)

读书人网 >其他数据库

热点推荐