首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在这个练习中,函数最大的选择是否会改变加班费?

在这个练习中,函数最大的选择是否会改变加班费?
EN

Stack Overflow用户
提问于 2022-06-11 09:14:32
回答 1查看 33关注 0票数 -1

我试图用这个查询来解决这个SQL练习,但是我无法理解它是否能够工作,因为这个部分:

代码语言:javascript
复制
HAVING COUNT(*) = (
SELECT MAX(TotalP)
FROM (SELECT AuthorCode, Edition, Conference, Count(*) TotalP
FROM AUTHOR_PRESENTS_ARTICLE APA1
WHERE APA1.Edition = APA.Edition AND APA1.Conference = APA.Conference
GROUP BY AuthorCode, Edition, Conference))

SELECT不是每次都返回相同的值(最大值)吗,所以我不能为会议的每个版本都返回相同的值吗?我附上我的完整代码如下:

代码语言:javascript
复制
SELECT EC.EditionName,
       APA.AuthorCode
FROM   EDITIONS_OF_THE_CONFERENCE EC,
       AUTHOR_PRESENTS_ARTICLE APA
WHERE  EC.Conference = APA.Conference
AND    EC.Conference IN(
         SELECT Conference
         FROM EDITIONS_OF_CONFERENCE
         GROUP BY Conference  --L'EDITION SARA' DIVERSA ESSENDO ENTRAMBE PK
         HAVING COUNT(*) >= 10
       )
GROUP BY APA.Edition,
         APA.EditionName,
         APA.Conference,
         APA.AuthorCode
HAVING COUNT(*) = (
                    SELECT MAX(TotalP)
                    FROM   (
                      SELECT AuthorCode,
                             Edition,
                             Conference,
                             Count(*) TotalP
                      FROM   AUTHOR_PRESENTS_ARTICLE APA1
                      WHERE  APA1.Edition = APA.Edition
                      AND    APA1.Conference = APA.Conference
                      GROUP BY AuthorCode, Edition, Conference
                    )
)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-11 09:37:08

不每次都返回相同的值(最大值),

不,它不会每次返回与子查询与外部查询相关的最大值。

如果你用过:

代码语言:javascript
复制
SELECT MAX(TotalP)
FROM   (
  SELECT AuthorCode,
         Edition,
         Conference,
         Count(*) TotalP
  FROM   AUTHOR_PRESENTS_ARTICLE APA1
  GROUP BY AuthorCode, Edition, Conference
)

然后,它将返回所有文章的最大计数,但您没有返回,并添加了一个WHERE过滤器:

代码语言:javascript
复制
SELECT MAX(TotalP)
FROM   (
  SELECT AuthorCode,
         Edition,
         Conference,
         Count(*) TotalP
  FROM   AUTHOR_PRESENTS_ARTICLE APA1
  WHERE  APA1.Edition = APA.Edition
  AND    APA1.Conference = APA.Conference
  GROUP BY AuthorCode, Edition, Conference
)

这将它限制在从外部查询中为该conferenceedition找到最大值,因此当您有不同的conference或不同的edition时,您将找到该特定配对的最大值。

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

https://stackoverflow.com/questions/72583090

复制
相关文章

相似问题

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