关于SQL查询,有学生和班级两张表。查询班级人数大于50的班级的所有信息?
SELECT
班级.ID
FROM
班级, 学生
WHERE
班级.ID = 学生.所属班级ID
GROUP BY
班级.ID
HAVING
COUNT(学生.ID) > 50
上面的SQL, 只获取班级人数大于50的班级的 ID
如果要班级的所有信息
SELECT
*
FROM
班级
WHERE
班级.ID IN
(
SELECT
班级.ID
FROM
班级, 学生
WHERE
班级.ID = 学生.所属班级ID
GROUP BY
班级.ID
HAVING
COUNT(学生.ID) > 50
)
有学生和班级两张表,如何用一条sql语句查询学生人数最多的班级信息?
select * from 班级 a left join (select 班级id,count(*) as counta from 学生 group by 班级id) b on a.班级id=b.班级id
where b.counta=(select top 1 COUNT(*) as counta from StudioNews group by UserID order by counta desc) 可能存在人数最多的不止一个班级