首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >postgres中的部门

postgres中的部门
EN

Stack Overflow用户
提问于 2019-01-18 00:47:29
回答 2查看 3.4K关注 0票数 3

我有两张表,论文和作者。Paper包含在给定时间段内发表的所有论文,并且Authors在一列中具有作者姓名,在另一列中具有发表论文的id (因此,同一作者可能会出现多次)。现在我要找出每篇论文的平均作者数量。

我的尝试:-

代码语言:javascript
复制
    (SELECT COUNT(*) FROM Author as decimal)/(SELECT COUNT(*) FROM Paper);

显然,第一部分将给出表Author中的行数,第二部分将给出总行数。发表的论文数量。但是,我得到了一个错误“错误:语法错误在或接近"/"”。我相信这是因为我可能是用一张表来划分一个表(因为我是postgres的初学者,我可能大错特错了,如果是这样的话请纠正我)。我只想知道我们如何才能解决这个错误。谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-18 00:52:03

假设所有论文至少有一位作者:

代码语言:javascript
复制
select count(*) * 1.0 / count(distinct paper_id)
from authors;

* 1.0是为了避免整数除法。

票数 2
EN

Stack Overflow用户

发布于 2019-01-18 01:00:08

您可以连接表并划分特定信息,例如:

代码语言:javascript
复制
SELECT 
COUNT(au.*)/COUNT(pa.*) AS division_result      -- depends on your data

FROM Author au

JOIN Paper pa
ON                               -- join criteria depends on your data(eg.au.id=pa.id  )

我希望这会对你有所帮助(我假设你没有使用BigQuery)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54240613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档