sql—聚合函数的用法,但没有子句

euoag5mw  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(358)

im已创建以下两个表:

create table partei(
id int not null primary key ,
name varchar(20),
vorsitzender varchar(20)
);

create table abgeordneter(
name varchar(20),
partei int references partei ,
wahlkreis varchar(20)
)

如何更改此select语句:

SELECT a.Partei
FROM Abgeordneter a, Partei p
WHERE a.Partei = p.ID
GROUP BY a.Partei
HAVING COUNT(a.Name) < 5

变成一个不使用having子句,但提供完全相同结果的语句?有可能吗?

gg58donl

gg58donl1#

可以使用子查询来消除 JOIN :

SELECT Partei
FROM (SELECT a.Partei, COUNT(*) as cnt
      FROM Abgeordneter ap
      GROUP BY a.Partei
     ) a
WHERE cnt < 5;

相关问题