UPDATE result a
SET (level1, code_type) =
(SELECT level1,
code_type
FROM template b
WHERE b.id = a.id
AND rownum < 2)
WHERE a.month_id =200807此处为什么要加个and rownum<2这个条件
SET (level1, code_type) =
(SELECT level1,
code_type
FROM template b
WHERE b.id = a.id
AND rownum < 2)
WHERE a.month_id =200807此处为什么要加个and rownum<2这个条件
code_type
FROM template b
WHERE b.id = a.id
AND rownum < 2
这个语句返回多行,上面这个语句的意思是返回第一行
而外层写的是WHERE a.month_id =200807
这应该是多个行
看他这个sql的意思应该是把a.month_id =200807的
level1, code_type的所有数据都更新为同一个值