我有一个更新语句去这样的:Update语句
update tableA
set val1='X', val2='Y'
where id in (
select id from tableA A
LEFT JOIN tableB B ON A.col1=B.col1 and A.col2=B.col2
where A.col3='xx' and B.col3= 'YY')
现在,内SELECT语句在10分钟内返回1000条记录运行(包括表A和tableB的有关于10MIL记录每个)
整个更新语句运行3小时(尚未等待完成)
任何想法?
它可能为tableA中的每一行运行内部查询。你使用的是哪个数据库? – 2010-03-03 16:18:41
数据库是DB2 – Peter 2010-03-03 16:23:00
表A上是否有涉及修改列的索引?开销可能会减慢进程 – 2010-03-03 16:24:41