我以前做过这么好的血腥,但我不知道怎么做。
我有一张学校表,每个都有一个ID和名字。
我有另一个学生表,每个表都有一个school_id外键。
我想写一个查询,它会返回一份学校名单和我记录的学生人数;像这样的东西:
School1 - 319
School2 - 166
School3 - 120
如果可以在Rails中优雅地完成而不诉诸原始SQL,那就获得奖励!
答案 0 :(得分:1)
在SQL中你可以这样做:
SELECT s.ID, COUNT(*)
FROM schools s
INNER JOIN students ss ON ss.schoolID = s.id
GROUP BY s.ID
(关于导轨部分我无法帮助你,抱歉)。
答案 1 :(得分:0)
对我来说没有铁路指点:
SELECT
school_name, count(*)
FROM
schools
LEFT JOIN
students
USING(school_id)
GROUP BY
school_id
答案 2 :(得分:0)
试一试:
SELECT s.schoolName, COUNT(st.id)
FROM Schools s
JOIN Students st
ON st.school_id = s.school_id
GROUP BY s.school_id