Sql 选择相同计数的位置
如何计算作者数量相等的论文数量 我想返回作者数量,论文数量,按作者数量升序排序 以下是我的SQL:Sql 选择相同计数的位置,sql,postgresql,Sql,Postgresql,如何计算作者数量相等的论文数量 我想返回作者数量,论文数量,按作者数量升序排序 以下是我的SQL: CREATE TABLE Papers( PKey INT PRIMARY KEY, Title VARCHAR(512) NOT NULL, Pages VARCHAR(64), CKey INT REFERENCES Conferences, JKey INT REFERENCES Journals, CHECK((CKey IS NOT NULL AND JKey I
CREATE TABLE Papers(
PKey INT PRIMARY KEY,
Title VARCHAR(512) NOT NULL,
Pages VARCHAR(64),
CKey INT REFERENCES Conferences,
JKey INT REFERENCES Journals,
CHECK((CKey IS NOT NULL AND JKey IS NULL)
OR (CKey IS NULL AND JKey IS NOT NULL))
);
CREATE TABLE AuthPapers(
PKey INT REFERENCES Papers,
AKey INT REFERENCES Persons,
Rank INT NOT NULL,
PRIMARY KEY(PKey, AKey),
CHECK(Rank >= 1)
);
CREATE TABLE Persons(
AKey INT PRIMARY KEY,
Name VARCHAR(128) UNIQUE NOT NULL,
Website VARCHAR(256),
IKey INT REFERENCES Institutions
);
我如何做到这一点
结果
请包括样本数据和所需结果。“以相等作者数计算论文数”有点含糊不清。我想将具有相同作者数的论文数作为输出。因此,如果有5篇论文有10位作者,那么我想得到写了这些论文的作者数量,以及有多少篇论文的作者数量完全相同。你能给出你想要的输出样本吗?我不清楚怎么可能是论文数量和同一行的论文数量。
select
AuthCount,
COUNT(Pkey) as PaperCount
FROM (
select
PKey,
COUNT(AKey) as AuthCount
FROM AuthPapers
GROUP BY PKey) as t
GROUP BY AuthCount
ORDER BY AuthCount