简单的问题
用a表的val26这个字段更新b表的val1这个字段,表的行数是一样的,也就是对应行赋值。我这么写不行,update b set val1=(select val26 from a),请大家指点我,谢谢
[解决办法]
应该是少了where条件
[解决办法]
起码应该有 a.pk = b.pk 吧,不然怎么匹配记录呢
[解决办法]
update b set val1 = (select val26 from a where a.pk_column = b.pk_column)
[解决办法]
那就应该是4W*4W,想一下有多少吧
[解决办法]
这要看实际情况,如果只更新部分数据,我通常这样做:
update b set val1 = (select val26 from a where a.pk_column = b.pk_column)
where b.pk_column in(select pk_column from a);
速度确实会存在差别的.
[解决办法]
没办法.数据多还是写索引比较快.
更新是要很长时间.没问题的.慢慢等好了.