作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用mysql + php开发了一个计费摘要页面。
SQL 如下:
SELECT SUM(value_a) A, SUM(value_b) B, SUM(value_c) C
FROM daily_data_sep_2010
WHERE user_id='<user_id>'
AND type
IN (
'type_a', 'typeb'
)
AND publish_date
BETWEEN '<start_date>'
AND '<end_date>'
GROUP BY publish_date
ORDER BY publish_date DESC
daily_data_sep_2010 表类型为 MyISAM
相同的查询有多种类型,但是 SUM(value_a) A、SUM(value_b) B、SUM(value_c) C 确实相同(相等)“WHERE”、“GROUP BY”条件不相同
这个屏幕对于重度用户来说非常慢。大家有什么好的解决办法吗?
解释在这里
|表|类型|possible_keys |key |key_len |ref |行|额外|
|daily_data_sep_2010|全部|主要,user_id_key,类型,发布日期|||| 1059756 |使用地点;使用临时的;使用文件排序|
我认为行大小对于总和来说太大了。所以我期待其他解决方案(Hadoop?)
最佳答案
如果您在(用户 ID,类型)上创建复合索引并执行以下操作,会有什么不同:
where userid = ? and type in (a,b)
and publish_date between...
group by publish_date
关于php - 某些账单详细信息页面的重度用户会出现延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3973541/
我需要获取并存储用户授权,以便将来通过 PayPal 向他们收费,该授权不应过期。 正常的认证和捕获持续 29 天。所以我研究了订阅和/或定期付款,但在这里您需要指定收费的次数、频率和时长。 我需要的
我是一名优秀的程序员,十分优秀!