Можно вместо предиката IN
использовать соединение, однако SQL Server
дает для этих двух случаев идентичные планы выполнения.
Консоль
SELECT a.model, price
FROM (SELECT model, price
FROM PC
UNION
SELECT model, price
FROM Laptop
UNION
SELECT model, price
FROM Printer
) AS a JOIN
Product p ON a.model = p.model
WHERE p.maker = 'B';
Альтернативой запросам, использующим объединение, могут
служить запросы на основе соединения. В данной задаче такое решение будет иметь
менее эффективный план выполнения, хотя в других случаях может оказаться
предпочтительным. Так или иначе, в учебных целях будет полезно рассмотреть
разные способы решения задачи, что и предлагается вам выполнить самостоятельно.
ПиР
Решить задачу на SQL-EX.RU