写一个查询来查找租借科幻电影超过 2 次的客户的全名并按字母顺序排列
Write a query to find the full names of customers who have rented sci-fi movies more than 2 times and arrange alphabetically
我正在尝试回答上述问题,但我的输出与预期输出不同。我的代码如下所示,
select distinct concat(first_name, ' ', last_name) as Customer_name
from customer c
inner join rental r on r.customer_id = c.customer_id
inner join inventory i on i.inventory_id = r.inventory_id
inner join film f on f.film_id = i.film_id
inner join film_category fc on fc.film_id = f.film_id
inner join category ca on ca.category_id = fc.category_id
where name = 'sci-fi' and rental_id > 2
order by Customer_name
按客户名称聚合,然后从 HAVING
子句断言计数为 2 或更大:
select concat(first_name, ' ', last_name) as Customer_name
from customer c
inner join rental r on r.customer_id = c.customer_id
inner join inventory i on i.inventory_id = r.inventory_id
inner join film f on f.film_id = i.film_id
inner join film_category fc on fc.film_id = f.film_id
inner join category ca on ca.category_id = fc.category_id
where name = 'sci-fi' and rental_id > 2
group by Customer_name
having count(*) > 2
order by Customer_name;
我正在尝试回答上述问题,但我的输出与预期输出不同。我的代码如下所示,
select distinct concat(first_name, ' ', last_name) as Customer_name
from customer c
inner join rental r on r.customer_id = c.customer_id
inner join inventory i on i.inventory_id = r.inventory_id
inner join film f on f.film_id = i.film_id
inner join film_category fc on fc.film_id = f.film_id
inner join category ca on ca.category_id = fc.category_id
where name = 'sci-fi' and rental_id > 2
order by Customer_name
按客户名称聚合,然后从 HAVING
子句断言计数为 2 或更大:
select concat(first_name, ' ', last_name) as Customer_name
from customer c
inner join rental r on r.customer_id = c.customer_id
inner join inventory i on i.inventory_id = r.inventory_id
inner join film f on f.film_id = i.film_id
inner join film_category fc on fc.film_id = f.film_id
inner join category ca on ca.category_id = fc.category_id
where name = 'sci-fi' and rental_id > 2
group by Customer_name
having count(*) > 2
order by Customer_name;