如果第二个语言环境中不存在,我正在尝试将数据从一个语言环境移动到另一个语言环境。我用来执行此操作的语句需要 20 小时才能执行,因此我将不胜感激有关如何更有效地执行此操作的任何想法。
update table
set localeid = 3
where localeid = 1
and not exists
(select id from table as b where localeid = 3 and id = b.id)
我想知道是否有某种方法可以使用约束并让 SQL 跳过违反约束的行,而不是使整个更新失败。在这种情况下,约束将是创建id,localeid
主键。
这可以做到吗?
ps 优化此查询所需的索引已经到位,但由于该数据库的庞大规模(包含超过 7000 万个条目),它仍然需要很长时间。