我有这样的表: 教导(的 CID,年,PID 下,等级) 教授(的 PID 下,名称)
我撰写了一个这样的查询(希望它给了我所有教授的评分,但不是最高的):
SELECT P.name, T.rating
FROM Teaches T, Professor P
GROUP BY T.pid
HAVING AVG(rating)
如何嵌入查询,例如将包含最高评级的行添加到此查询中?
答案 0 :(得分:1)
将此信息包含在您的查询中:
ORDER BY 'column_name' DESC
其中' column_name'将由teacher_rating取代。
更多参考:Visit this
答案 1 :(得分:0)
如果您想获得教授的最高平均评分,您可以将平均评分设为列,按该列按降序排序,并将结果集限制为1.
试试这个:
SELECT p.Name, AVG(t.rating) AS averageRating
FROM teaches t
JOIN professor p ON p.id = t.pid // I don't know if this is right, but you need to have a join here, and I don't know what your related columns are.
GROUP BY t.pid
ORDER BY averageRating DESC
LIMIT 1;
这将是最高评级,限制为1行将有效地抓住评级最高的教授。