mysql简单的查询 速度很慢,求高人指点!感谢!

kingloong123 2019-04-17 10:40:09
此脚本执行起来半个多小时都没反应,表m_ecrp_trade_ord_t共有数据1300多万条(13500437条),表内字段out_nick,shop_id,pay_time_dt已添加索引。执行起来就是不出数,不知道为什么??
还能如何优化么,求指教!万分感谢!

SELECT
out_nick,
shop_id,
pay_time_dt ,
sum( trade_payment ) trade_payment
FROM
m_ecrp_trade_ord_t t
GROUP BY
out_nick,
shop_id,
pay_time_dt

...全文
645 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
AHUA1001 2019-08-21
  • 打赏
  • 举报
回复
这样的表,可以考虑加分区了。 您说有索引的哪三个字段,是分别建了三个索引,还是一个三个字段的复合索引。 建议索引有4个字段组成out_nick,shop_id,pay_time_dt,trade_payment。 第四个字段的位置不变,前三个字段需要调整,把差异性大的放在前边。 差异性:以人举例,人的性别,只有男女2个可能,而姓名重复的可能性就要小很多。索引姓名的差异性,就不性别大。
fuzhzh345 2019-06-20
  • 打赏
  • 举报
回复
试下trade_payment也加索引看看,有没有效果; 因为你这个语句必须用到全表扫描,因为1300多万都参与运算了,也可以实时楼上的联合索引了联合索引 out_nick,shop_id,pay_time_dt
点滴寸土 2019-05-06
  • 打赏
  • 举报
回复
联合索引 out_nick,shop_id,pay_time_dt 试试
kingloong123 2019-04-23
  • 打赏
  • 举报
回复
引用 3 楼 Q446512799 的回复:
[quote=引用 2 楼 kingloong123 的回复:]
[quote=引用 1 楼 Q446512799 的回复:]
你的索引是out_nick,shop_id,pay_time_dt字段,但没用到where条件上啊那索引有啥用


确实是没用到索引,那该怎么优化呢,那查询也不能这么慢吧?[/quote]
你这是全表查询啊,数据多了全表肯定慢,不能where上加上out_nick,shop_id,pay_time_dt这些条件查吗[/quote]

不加条件的,就是要查询全量数据的
Q446512799 2019-04-19
  • 打赏
  • 举报
回复
引用 2 楼 kingloong123 的回复:
[quote=引用 1 楼 Q446512799 的回复:]
你的索引是out_nick,shop_id,pay_time_dt字段,但没用到where条件上啊那索引有啥用


确实是没用到索引,那该怎么优化呢,那查询也不能这么慢吧?[/quote]
你这是全表查询啊,数据多了全表肯定慢,不能where上加上out_nick,shop_id,pay_time_dt这些条件查吗
kingloong123 2019-04-18
  • 打赏
  • 举报
回复
引用 1 楼 Q446512799 的回复:
你的索引是out_nick,shop_id,pay_time_dt字段,但没用到where条件上啊那索引有啥用


确实是没用到索引,那该怎么优化呢,那查询也不能这么慢吧?
Q446512799 2019-04-17
  • 打赏
  • 举报
回复
你的索引是out_nick,shop_id,pay_time_dt字段,但没用到where条件上啊那索引有啥用

8,028

社区成员

发帖
与我相关
我的任务
社区描述
高性能数据库开发
社区管理员
  • 高性能数据库开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧