Mysql 要联接的SQL 3表
表Mysql 要联接的SQL 3表,mysql,sql,greatest-n-per-group,Mysql,Sql,Greatest N Per Group,表film film\u id title description\u rental\u rate 表类别 category\u id name last\u update 表film\u类别 film\u id category\u id last\u update 我有SQL选择5个最受欢迎的租金率与 SELECT title, rental_rate FROM film ORDER BY rental_rate DESC LIMIT 5 基于以上SQL,如何选择4个最受欢迎的类别 我想要
film
film\u id title description\u rental\u rate
表类别
category\u id name last\u update
表film\u类别
film\u id category\u id last\u update
我有SQL选择5个最受欢迎的租金率与
SELECT title, rental_rate FROM film ORDER BY rental_rate DESC LIMIT 5
基于以上SQL,如何选择4个最受欢迎的类别
我想要的结果只是类别。name
试试这个:
select * from (select t3.name,sum(t1.rental_rate) as rate from film as t1
inner join film_category as t2 on t1.film_id=t2.film_id
inner join category as t3 on t2.category_id=t3.category_id
group by t2.category_id) as detail order by rate DESC LIMIT 5
可能您正在寻找以下内容:
SELECT c.name FROM film a
INNER JOIN film_category b ON a.film_id=b.film_id
INNER JOIN category c ON b.category_id=c.category_id
WHERE a.rental_rate IN
(
SELECT TOP (5) rental_rate FROM film
ORDER BY rental_rate DESC
)
您能分享一些示例数据和您想要得到的结果吗?您使用的是哪种DBMS?博士后?甲骨文?你说的“四大最受欢迎类别”是什么意思?我用的是一匹没有名字的马MySQL@Metaphor我的意思是租金是最高的。非常感谢,我把
选择t2。名字改为选择t3。名字别名错了。谢谢。很抱歉,这将是t3。nameMySQL不使用top
关键字,而是limit
。