为什么在较高 ID 上选择/更新内连接需要更长的时间,有解决办法吗?

发布于 2025-01-11 02:09:02 字数 366 浏览 0 评论 0原文

我有两张表,一张有约 25 万条记录,一张有约 150 万条记录。

我正在使用内部联接进行选择和/或更新。

它挂了,所以我决定分批进行,例如

Where ID<100000

,然后

Where ID>=100000 and ID<200000

每个连续的批次都需要越来越长的时间。当然,问题还在于可能有一些记录会加入而不会被批次分开。

我很好奇为什么会这样(为什么前 100k 个 ID 加入得很快,而最后 100k 个 ID 需要更长的时间),以及是否有一种方法可以作为单个查询执行,而无需 ID 成为问题(如果它们事实上是)。

I have two tables, one with ~250k records one with ~1.5M records.

I am doing a Select and/or Update using Inner Join.

It hung so I decided to to in batches e.g.

Where ID<100000

then

Where ID>=100000 and ID<200000

with each successive batch it takes longer and longer. Adding to the issue of course is there might be records that would have joined w/o being separated by batches.

I'm curious why that is (why do the first 100k IDs join fast and the last 100k take so much longer) and if there is a way to do as a single query w/o the IDs becoming a/the issue (if they in fact are).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文