SELECT COUNT(amoid) num FROM alp_merchant_order WHERE (mobile LIKE '%15011236833%' || phone LIKE '%15011236833%') AND orderstatus NOT IN (0,17) AND createtime >='2016-05-26 15:01:02';
看下这个sql,全表扫描 ,帮忙优化下
非常感谢
如果15011236833,已经确定使用 = ,效率更高
如果左边确定的话,使用'15011236833%' ,就可以走索引
这种情况下没别的好办法,你赢考虑使用10.5的的BLU加速全表扫描,或者用DBF提升全表扫描并行度。不过没法同时使用BLU和DPF
createtime mobile phone amoid
如果不能改sql 的话,要不要尝试压缩一下表,看看能压缩多少,反正表看起来也不大。
我创建一个联合索引 查询还是全表扫描
好的 我试下
建立一个组合的,alp_merchant_order_IDX、alp_merchant_order_IDX1、alp_merchant_order_IDX2、alp_merchant_order_IDX3、这几个就可以删除掉了
可以键索引 但是写入这张表数据量比较大 比较频繁 索引太多也会影响写入速度
表数据26万多
关于TWT使用指南社区专家合作厂商入驻社区企业招聘投诉建议版权与免责声明联系我们 © 2024talkwithtrend — talk with trend,talk with technologist京ICP备09031017号-30