PD2*_*D24 0 sql t-sql sql-server sql-server-2008
我有以下INSERT语句:
INSERT INTO [StoreTestDB].[dbo].[KitItem]
           ([KitItemGUID]
           ,[KitGroupID]
           ,[Name]
           ,[Description]
           ,[PriceDelta]
           ,[WeightDelta]
           ,[IsDefault]
           ,[DisplayOrder]
           ,[ExtensionData]
           ,[TextOptionMaxLength]
           ,[TextOptionWidth]
           ,[TextOptionHeight]
           ,[InventoryVariantID]
           ,[InventoryVariantColor]
           ,[InventoryVariantSize]
           ,[CreatedOn])
VALUES
...
...
...
Run Code Online (Sandbox Code Playgroud)
我需要运行另一个查询,以根据将成为字体的名称找出KitGroupID.
这是我大致想要这样做的方式:
SELECT TOP1 (KitGroupID)
FROM KitGroup
WHERE Name = "Font"
AND ProductID = 157
Run Code Online (Sandbox Code Playgroud)
我有大约30个productIDs,我有很多字体.
我需要运行insert语句然后在运行时我需要select查询来找出KitGroupID然后完成插入.那有意义吗?
我怎么能这样做,我对SQL很陌生..提前感谢
你可以INSERT从一个SELECT声明,并包括很多文字SELECT:
INSERT [StoreTestDB].[dbo].[KitItem]
     -- all your column names
SELECT TOP 1
    'Value',
    23,
    [KitGroupId],
    'More values',
    -- ...
FROM [KitGroup] WHERE ...
Run Code Online (Sandbox Code Playgroud)