SQL: Оператор EXISTS для проверки наличия строк

Оператор EXISTS в MySQL используется для проверки наличия строк, удовлетворяющих условию в подзапросе. Он возвращает true, если подзапрос находит хотя бы одну строку, и false в противном случае. Этот оператор часто используется для условий, когда тебе нужно проверить существование связанных данных в других таблицах.

Пример - запрос найдёт клиентов, которые сделали хотя бы один заказ:

# Выбираем имена клиентов (clientName) из таблицы clients, для которых существуют записи в таблице orders
SELECT 
	clientName
FROM 
	clients
WHERE 
	EXISTS (
    	SELECT 1
    	FROM orders
    	WHERE orders.clientID = clients.clientID
	);

Пример - запрос найдёт клиентов, которые не сделали ни одного заказа:

SELECT 
	clientName
FROM 
	clients
WHERE 
	NOT EXISTS (
    	SELECT 1
    	FROM orders
    	WHERE orders.clientID = clients.clientID
	);
SQL MySQL Просмотров: 162
Оценить код:

Комментарии

Ваш комментарий будет первым.
Войдите, чтобы оставить комментарий.