insert into B表(name,norm,unit,amount)
select name,norm,unit,amount
from A表 where number= '00000002'如果number='0000002'大于1条记录
就报错错误信息:子查询返回的值多于一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的应该怎么解决,请高手赐教
select name,norm,unit,amount
from A表 where number= '00000002'如果number='0000002'大于1条记录
就报错错误信息:子查询返回的值多于一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的应该怎么解决,请高手赐教
insert into B表(name,norm,unit,amount)
select name,norm,unit,amount
from A表 where number in( '00000002' )
insert into B表(name,norm,unit,amount)
select name,norm,unit,amount
from A表 where number in( '00000002' )
insert into B表(name,norm,unit,amount)
select name,norm,unit,amount
from A表 where number in( select number from 别的表 )
可以修改触发器或暂时禁用触发器。
insert into B表(name,norm,unit,amount)
select name,norm,unit,amount
from A表 where number in( select col from tb)
就报错
说明你的子查询返回的列值个数大于1,不能用=、!=、 <、 <=、>、>= 这些关系运符,用3楼的就行了。
这样还可以正常INSERT吗?