Udostępnij za pośrednictwem


Podkwerendy w aktualizacji, usuń i instrukcji INSERT

Podkwerendy można zagnieżdżać w instrukcjach UPDATE, DELETE, INSERT i wybierz manipulacji (DML) danych.

Poniższy przykład podwaja się wartość w ListPrice kolumna w Production.Product tabela.podzapytanie w klauzula WHERE odwołuje się do Purchasing.ProductVendor tabela, aby ograniczyć zaktualizowanych w Product tabela tylko tych dostarczonych przez BusinessEntity 1540.

USE AdventureWorks2008R2;
GO 
UPDATE Production.Product
SET ListPrice = ListPrice * 2
WHERE ProductID IN
    (SELECT ProductID 
     FROM Purchasing.ProductVendor
     WHERE BusinessEntityID = 1540);
GO

Oto równoważne instrukcja UPDATE za pomocą łączyć:

USE AdventureWorks2008R2;
GO 
UPDATE Production.Product
SET ListPrice = ListPrice * 2
FROM Production.Product AS p
INNER JOIN Purchasing.ProductVendor AS pv
    ON p.ProductID = pv.ProductID AND BusinessEntityID = 1540;
GO