MySQL查询在关系表上添加限制

MySQL查询在关系表上添加限制,mysql,sql,Mysql,Sql,我有两张桌子和OneToMany相连。表格书籍和表格作者。每个作者都有许多书。 我想拿一份书单,但每个作者只有10本书 如何做到这一点 感谢您的帮助您可以使用行号,例如: select * from ( select *, row_number() over(partition by author_id order by title) as rn from book ) x where rn <= 10 您使用的是哪一个MySQL版本?MySQL-V提供:MySQL版本15.1发

我有两张桌子和OneToMany相连。表格书籍和表格作者。每个作者都有许多书。 我想拿一份书单,但每个作者只有10本书

如何做到这一点

感谢您的帮助

您可以使用行号,例如:

select *
from (
  select *, row_number() over(partition by author_id order by title) as rn
  from book
) x
where rn <= 10

您使用的是哪一个MySQL版本?MySQL-V提供:MySQL版本15.1发行版10.3.28-MariaDB,适用于使用readline 5.2的debian linux gnu x86_64。让我试一试:如果有人感兴趣:从SELECT*中选择*,按作者id按过期日期排序的行数超额分配为NULL DESC,过期日期DESC为最大图书数量每个作者来自图书b内部在b上加入作者a。作者id=a.id其中最大图书数量每个作者