有一个话单表,其中有一个电话字段及一个时间字段,每天会生成4万条记录。
现在要实现这一功能:通过指定范围段,生成如下的结果。其中新用户数问题遇到问题。
日期 人数 新参与人数 每人平均消费
2009-4-12 20 12 100
2009-4-13 50 12 300
。。。
新用户数的效率是个问题。我目前用的是not in .
新用户是特定于当天的?
“参与”这个行为应该是用户与“活动”之间发生的一个关系(我不太了解你的场景,妄自揣测一下),那么应该有一个关系表去存储有关“参与”的一些信息。如果这个关系表在时间上做了聚集索引,相信效率不会太差。
不太明白你想求助的是数据库的设计问题,还是SQL查询怎么写比较有效率的问题。如果是后者,最好有个你的库结构或者示例Query
按我的设计思想这些表应该要有一些与时间或者状态的字段,如果你有这些字段,那处理新客户应该没有什么难度。然后在时间的字段上加索引,这样效率也应该不低,毕竟就4万条数据而已,对于数据库来说不多。个人看法,希望高手指教