#sql #where-clause #any
Вопрос:
Как я могу изменить этот следующий код с ТОГО МЕСТА, ГДЕ ЕГО НЕТ, на ЛЮБОЙ
SELECT
CategoryName
FROM
Categories
WHERE
NOT EXISTS (SELECT *
FROM Products
WHERE Categories.CategoryID = Products.CategoryID)
Моя цель состояла в том, чтобы показать, с названиями каких категорий не связаны продукты. Пожалуйста, прокомментируйте, если вам нужна схема.
Ответ №1:
Если вам нужно использовать any
, просто откажитесь от этого с помощью not
select CategoryName
FROM Categories
where not (categoryId = any (select CategoryId from products))
Ответ №2:
Кажется странным, но вы можете использовать ALL
вместо ANY
:
select c.*
from categories c
where categoryID <> all (select p.categoryID from products p)
Комментарии:
1. Я должен изменить его на ЛЮБОЙ пункт. Я не могу использовать ВСЕ.