-1

假设我有两张桌子,

 - emp(empId number(1),empName varchar2(50)) and
 - manager(manId number(5),managerName varchar2(100))

我发出一个查询-

select * from emp e,manager m where e.empId = m.manId; 
update emp set empName= (select managerName from manager where manId='2');

由于empName和managerName的长度不同,这个sql会有什么问题吗?

4

1 回答 1

2

第一个会起作用(好吧,不会引发错误),如果 managerName > 50 的长度,第二个会引发错误。

它可以 substr(managerName, 0, 50)

WHERE empId = 2

在最后。

顺便说一句,你可以尝试!

于 2012-06-12T11:21:11.963 回答