【问题标题】:SQL UPDATE SET SELECT slow [closed]SQL UPDATE SET SELECT慢[关闭]
【发布时间】:2021-12-27 01:18:15
【问题描述】:

我有一个 SQL UPDATE,但运行时间太长。记录数超过 400000。

UPDATE items i 
SET i.itemId = (SELECT o.id FROM itemOri o WHERE i.barcode = o.barcode);

【问题讨论】:

  • 两个表中的barcode 列是否都有索引?

标签: mysql sql select


【解决方案1】:

确保您在两个表中的 barcode 列上都有索引。然后使用JOIN 而不是子查询:

UPDATE items i
JOIN itemOri o ON i.barcode = o.barcode
SET i.itemId = o.id

【讨论】:

    猜你喜欢
    • 2018-10-06
    • 1970-01-01
    • 2012-12-09
    • 1970-01-01
    • 1970-01-01
    • 2013-02-17
    • 2018-01-26
    • 2020-07-28
    • 1970-01-01
    相关资源
    最近更新 更多