作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
源表和目标表都有大约40列。要更新的行数约为20。Destination表的行数约为30k。
下面是否有更好的方法(较短的查询)?
UPDATE destination_table t1
SET
field1 = (select field1 from src_table t2 where t2.pk = t1.pk),
field2 = (select field2 from src_table t2 where t2.pk = t1.pk),
...
field40 = (select field40 from src_table t2 where t2.pk = t1.pk),
WHERE EXISTS (select 1 from src_table t2 where t2.pk = t1.pk)
最佳答案
您可以使用如下形式:
UPDATE dest
SET dest.Field1 = src.Field1,
dest.Field2 = src.Field2,
dest.Field3 = src.Field3,
dest.Field4 = src.Field4,
dest.Field5 = src.Field5,
dest.Field6 = src.Field6
FROM destination_table dest
INNER JOIN src_table src
ON src.pk = dest.pk
关于sql - 较短的查询方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8786334/
我是一名优秀的程序员,十分优秀!