假设有以下三个表格:Customers(客户表),Movies(电影表),Rentals(租赁表)。
Customers表格包含以下列:customer_id(客户ID),first_name(名),last_name(姓)。 Movies表格包含以下列:movie_id(电影ID),title(标题),genre(类型)。 Rentals表格包含以下列:rental_id(租赁ID),customer_id(客户ID),movie_id(电影ID)。
我们可以使用以下SQL查询来找到租赁了超过5次科幻电影的客户的全名,并将这些名字按照字母顺序排列:
SELECT CONCAT(first_name, ' ', last_name) AS full_name
FROM Customers
WHERE customer_id IN (
SELECT customer_id
FROM Rentals
WHERE movie_id IN (
SELECT movie_id
FROM Movies
WHERE genre = 'Science Fiction'
)
GROUP BY customer_id
HAVING COUNT(*) > 5
)
ORDER BY full_name;
请注意,上述查询使用了嵌套的子查询来筛选符合条件的客户ID,并且使用CONCAT函数将名字和姓氏连接起来。最后,使用ORDER BY子句按照full_name列的字母顺序进行排序。