我有两个表可以联接和使用。我必须在一开始就数一些事情,之后我必须编写一个子查询以显示我之前计算出的maxNumber。我不知道如何正确获得子查询。
这是两个表:
1. course
coursNr(key)
topic
memberNR
2. courseo
coursNr(key)
persNr
我设法正确完成了第一步,如下所示,但是我没有正确获得子查询。
select courseo.coursNr, course.topic, count(courseo.persNr)
from courseo, course
WHERE course.coursNr = courseo.coursNr
group by courseo.coursNr
//here follows the subquery
Where courseo.persNr IN (Select MAX (courseo.persNr)
from curseo)
直到子查询我得到这个:
courseNR topic count(courseo.persNr)
1 database 6
2 network 8
3 organisation 2
等 但我只希望这样显示最大数量
courseNR topic count(courseo.persNr)
2 network 8
答案 0 :(得分:2)
除了使用max()
之外,您还可以按计数对数据进行排序,并且只使用编号最大的行。
select courseo.coursNr, course.topic, count(courseo.persNr) as cnt
from courseo, course
WHERE course.coursNr = courseo.coursNr
group by kursbelegung.KursNr
order by cnt desc
limit 1