SQL Server使用空值将表中的行插入到另一个表中
好的,我刚刚创建了一个带有一些列的表SQL Server使用空值将表中的行插入到另一个表中,sql,sql-server,insert,rows,nopcommerce,Sql,Sql Server,Insert,Rows,Nopcommerce,好的,我刚刚创建了一个带有一些列的表\u amazonProduct: ID ProductID ProductPrice 现在我有一个产品表,有很多列,超过50列 我要插入的列是Id从product表插入中的ProductID。所有其他值都将设置为null 有些事情我试过了 UPDATE [Azure_Test].[dbo].[_amazonProduct] SET [Azure_Test].[dbo].[_amazonProduct].[ProductID] = [Azure_Test].
\u amazonProduct
:
ID
ProductID
ProductPrice
现在我有一个产品表,有很多列,超过50列
我要插入的列是Id
从product
表插入中的ProductID
。所有其他值都将设置为null
有些事情我试过了
UPDATE [Azure_Test].[dbo].[_amazonProduct]
SET [Azure_Test].[dbo].[_amazonProduct].[ProductID] = [Azure_Test].[dbo].[Product].[Id]
FROM [Azure_Test].[dbo].[_amazonProduct]
JOIN [Azure_Test].[dbo].[Product] ON [Azure_Test].[dbo].[_amazonProduct].[ProductID] = [Azure_Test].[dbo].[Product].[Id]
还尝试:
SELECT [Azure_Test].[dbo].[Product].[Id]
INTO [Azure_Test].[dbo].[_amazonProduct].[ProductID]
FROM [Azure_Test].[dbo].[Product]
UPDATE [Azure_Test].[dbo].[_amazonProduct]
SET [ProductID] = (
SELECT [Id]
FROM [Azure_Test].[dbo].[Product]
)
还尝试:
SELECT [Azure_Test].[dbo].[Product].[Id]
INTO [Azure_Test].[dbo].[_amazonProduct].[ProductID]
FROM [Azure_Test].[dbo].[Product]
UPDATE [Azure_Test].[dbo].[_amazonProduct]
SET [ProductID] = (
SELECT [Id]
FROM [Azure_Test].[dbo].[Product]
)
任何能帮我的人,都不知道该怎么做
干杯试试:
--复印件:
SELECT *
INTO [Azure_Test].[dbo].[_amazonProduct]
FROM [Azure_Test].[dbo].[Product] WHERE 1=0
GO
sp_rename '_amazonProduct.ID','ProductID','COLUMN'
GO
--在新表中插入:
insert into [Azure_Test].[dbo].[_amazonProduct](ProductID)
select ID FROM [Azure_Test].[dbo].[Product]
您还可以使用动态脚本。Perfect第二条语句正是我所需要的,它插入每个ProductID,自动递增ID,并将其他值设置为null。谢谢你的帮助,冠军:)