我有桌面产品,product_sn
每个产品都有一个或多个sn(serialNumber) 所以让我们想象我的产品id = 11,productName ='milk'我希望将produt_sn中的所有serialNumber复制到表产品中
declare table product (
id int identity(1,1) primary key,
productName varchar(100),
serialNumber BIGINT
)
declare table product_sn (
serialNumber BIGINT
)
product_sn (
867635017749586,
867635017734984,
867635017753893,
867635017724894,
867635017749727,
867635017725289,
867635017752739,
867635017724761,
867635017756193,
867635017756268
)
declare @sn bigint
select @sn from product_sn
insert into product values (id,productName,@sn) ??
答案 0 :(得分:1)
declare @sn bigint
select @sn from product_sn
这肯定会在这里引发错误,因为你试图在一个变量中选择多行。
要解决此问题,请尝试以下操作:
insert into product(serialnumber)
select serialnumber
from product_sn
答案 1 :(得分:-1)
我只是在这里猜测,因为你没有提供实际的错误,但似乎你试图将值插入到被定义为身份的字段,不会。
只写:
insert into product values (productName,@sn)