dd[@more@]select t1.aa,case when t1.bb < t2.bb then t2.bb else t1.bb end from table1 t1 left join table2 t2 on t1.aa=t2.aa order by aa; select a.aa ,b.bb from table1 a left join table2 b on a.aa=b.aa order by aa; UPDATE table1 a SET a.bb = (SELECT CASE WHEN t1.bb < t2.bb THEN t2.bb ELSE t1.bb END FROM table1 t1 LEFT JOIN table2 t2 ON t1.aa = t2.aa WHERE t1.aa = a.aa) 今天发现一个严重的问题: table1 AA BB 1 4 2 5 3 6 4 7 table2 1 7 4 6 5 8 有这样的两个表要求当table1中的BB小于table2对应的BB 是替换掉结果应该是 table1 AA BB 1 7 2 5 3 6 4 7 这样是错的: update table1 a set a.BB=(select b.BB from table2 b where a.aa=b.aa and a.bb
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/219138/viewspace-916268/,如需转载,请注明出处,否则将追究法律责任。