mysql的join适合拆分

阅读: 评论:0

mysql的join适合拆分

mysql的join适合拆分

我有以下的MySQL查询:

SELECT pool.username

FROM pool

LEFT JOIN sent ON pool.username = sent.username

AND sent.campid = 'YA1LGfh9'

WHERE sent.username IS NULL

der = 'f'

AND (`location` = 'united states' OR `location` = 'us' OR `location` = 'usa');问题是池表包含数百万行,并且此查询需要12分钟才能完成。我意识到在这个查询中,整个左表(池)正在被扫描。池表具有自动递增的id行。

我想将此查询拆分为多个查询,以便不扫描整个池表,我一次扫描1000行,而在下一个查询中,我将拾取从哪里离开(1000-2000,2000-3000)等关于使用id列来跟踪。

我如何在我的查询中指定这个?如果你知道答案,请举例说明。谢谢。

如果有帮助,这里是我的索引:

mysql> show index from main.pool;

| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |

+-------+------------+----------+--------

本文发布于:2024-02-04 08:18:10,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170702909353881.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:适合   mysql   join
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23