在不使用Exists或SubQuery时,可以使用JOIN来注释。以下是示例代码:
例1:为每个客户显示他们最近的订单的订单号和订单日期。
SELECT c.customerName, o.orderNumber, o.orderDate FROM customers c JOIN orders o ON c.customerNumber = o.customerNumber JOIN (SELECT customerNumber, MAX(orderDate) AS latestOrderDate FROM orders GROUP BY customerNumber) AS o2 ON o.customerNumber = o2.customerNumber AND o.orderDate = o2.latestOrderDate;
例2:显示每个员工的名字和他们的经理的名字。
SELECT e.employeeName, m.employeeName AS managerName FROM employees e LEFT JOIN employees m ON e.reportsTo = m.employeeNumber;
在这两个例子中,我们使用了JOIN来注释,避免了使用Exists或SubQuery。