带JOIN的每组N组

Koh*_*ese 6 mysql sql greatest-n-per-group

我试图复制的逻辑显示在这里.但是,当有连接时,我没有运气.以下是我的查询的最小化版本:

SELECT resources.title, catRel.catRef
FROM resources 
LEFT JOIN placesRel ON placesRel.refId = resId 
LEFT JOIN catRel ON refId = resId
WHERE ...
Run Code Online (Sandbox Code Playgroud)

简而言之,我得到一个包含类别ID的列表,我希望将结果限制为不超过一个类别的n个结果,例如,每个catRef只显示两个结果:

title             catRef
Swizz Gubbinz     1
Runcible Spoons   1
Peter Pan DVD     2
Button Moon       2
Monkey Alan       3
Bilge Pump        3
Run Code Online (Sandbox Code Playgroud)

Kyr*_*yra 2

在连接中使用子查询怎么样?我不确定 refID 和 resID 属于哪个表,但是......

SELECT resources.title, catRel.catRef
FROM resources 
LEFT JOIN placesRel ON placesRel.refId = resId 
LEFT JOIN catRel as cr1 ON cr1.catRel.primaryKey in (select cr2.primaryKey from catRel as cr2 where cr2.refID = resId Limit 0,2)
WHERE ...
Run Code Online (Sandbox Code Playgroud)