在SQL中,EXISTS和IN都用于子查询,但它们的用途和行为有所不同。
例如,以下查询将返回所有具有至少一个订单的客户:
SELECT *
FROM customers
WHERE EXISTS (
SELECT *
FROM orders
WHERE orders.customer_id = customers.customer_id
);
例如,以下查询将返回所有具有订单的客户,其中订单状态为’Completed’:
SELECT *
FROM customers
WHERE customer_id IN (
SELECT customer_id
FROM orders
WHERE order_status = 'Completed'
);
总结:
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:Oracle的exists和not exists的区别是什么