【发布时间】:2016-02-16 03:20:23
【问题描述】:
我正在使用 SQL Server。 对于每个:
select * from ServiceItems where Itemtypeid=7004 (query1)
我想在同一个表中插入三个新行,例如:
(ItemID, PackageID, ItemTypeID, ServiceID, ItemName, CreatedDate) VALUES
(19377, 5352, 7007, 2011, N'L1', '11/11/2015 6:50:51 PM'),
(19378, 5352, 7008, 2011, N'M1', '11/11/2015 6:50:51 PM'),
(19376, 5352, 7006, 2011, N'W1', '11/11/2015 6:50:51 PM')
ItemID = is the primary key
PackageID = one from query1
ItemTypeID = as it is 7006,7007,700
ServiceID = one from query1
ItemName = as it is L1,M1,W1
CreatedDate = time now
我试过INSERT INTO SELECT...
INSERT INTO ServiceItems (PackageID, ItemTypeID, ServiceID, ItemName, CreatedDate)
SELECT PackageID, '7006', ServiceID, 'W1','' FROM ServiceItems WHERE ItemID = '7004'
但是这个会增加一行。我必须创建三个单独的查询吗?使用游标怎么样?
【问题讨论】:
-
您如何确定每次插入时插入的行的值?
-
@Kritner 有些值与结果值相同,有些是手动添加的(日期和名称)。
标签: sql sql-server sql-insert