如下sql執(zhí)行太慢,應該怎么優(yōu)化一下呢?
UPDATE AA A
SET COL1 =
(SELECT B.COL2
FROM BB B
WHERE B.BH = A.BH
AND B.YEAR = '2016-2017'
)
WHERE A.YEAR = '2017-2018';
其中,AA表和BB表相同,是一個表
4 回答

江戶川亂折騰
TA貢獻1851條經(jīng)驗 獲得超5個贊
沒看懂的是AA 和 BB 是一張表 還是兩張表,
如果是一張表@prolifes 的方法就可以
如果是兩張表
update AA a, BB b set a.col1 = b.col2 where a.bh = b.bh and a.year='2017-2018' and b.year='2016-2017',
還有,慢和你的數(shù)據(jù)量大小, 索引都有關系, 我只是給一個一般方法, 效果怎么樣,得自己試試
添加回答
舉報
0/150
提交
取消