对于子查询,我需要在每组id_student
的前五行之后进行选择,并且必须在id_student
之间使用id_desireCollage
的公共值。
更多解释:在选择了五个愿望之后,为每个学生的愿望选择共同的拼贴画
| 识别号|id_期望拼贴|id_学生|
| - ------| - ------| - ------|
| 1个|1个|1个|
| 第二章|第二章|1个|
| 三个|三个|1个|
| 四个|四个|1个|
| 五个|五个|1个|
| 六个|八个|1个|
| 七|九|1个|
| 八个|七|1个|
| 九|第二章|第二章|
| 十个|十二|第二章|
| 十一|1个|第二章|
| 十二|三个|第二章|
| 十三|六个|第二章|
| 十四|五个|第二章|
| 十五|八个|第二章|
| 十六|九|第二章|
| 十七|七|第二章|
| 十八|四个|三个|
| 十九|三个|三个|
| 二十个|第二章|三个|
| 二十一|1个|三个|
| 二十二|八个|三个|
| 二十三|九|三个|
| 二十四|七|三个|
| 二十五|五个|三个|
就像
select id_desireCollage
from
(select *
from desires ds
where ds.id_desireCollage = desires.id_desireCollage)
group by (id_student)
having count(*) > 5
预期结果为:
| id_期望拼贴|
| - ------|
| 七|
| 九|
1条答案
按热度按时间67up9zun1#
请尝试以下操作:
如果你不想使用行号函数(正如你所评论的),你可以尝试下面的**-假设ID列中没有间隙**:
See demo
正如@MatBailie所建议的,如果您的意思是 * common *,即所有学生都选择了id_desireCollage值,则您可以使用以下命令: