题:获取姓名为张三 的用户的age,并将age赋值给姓名赵六的的用户。原始数据:
一般的写法是:
UPDATE user SET age = ( SELECT age FROM user WHERE name = '张三' ) WHERE name = '赵六';
这样的写法对Oracle和SQLServer 来说都是正确的。但是mysql会报一个错误 :
原因是:mysql在from子句中遇到子查询时,先执行子查询并将结果放到一个临时表中,我们通常称它为“派生表”;临时表是没有索引、无法加锁的。
updat...