为什么我在这个 SQLzoo 教程中无法得到正确的答案?

发布于 2024-07-12 06:57:30 字数 327 浏览 6 评论 0原文

问题2b如下:

2b。 对于每个主题,显示获奖的第一年。

<块引用>

诺贝尔奖(年份、主题、获奖者)

我的解决方案是这样的:
<代码> 选择不同的主题,年份
来自诺贝尔
ORDER BY yr ASC;

为什么这不起作用?

Problem 2b goes as follows:

2b. For each subject show the first year that the prize was awarded.

nobel(yr, subject, winner)

My solution was this:

SELECT DISTINCT subject, yr
FROM nobel
ORDER BY yr ASC;

Why isn't this working?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

二手情话 2024-07-19 06:57:30

您可以采用不同的方式来完成此操作,而不使用 group by 或 min,

select distinct subject, yr from nobel x
  where yr <= all
    (select yr from nobel y
     where y.subject = x.subject)

但它肯定需要更多工作。

You could do it a different way without using group by or min

select distinct subject, yr from nobel x
  where yr <= all
    (select yr from nobel y
     where y.subject = x.subject)

but its definitely more work.

倦话 2024-07-19 06:57:30

对于主题和年份的每个不同组合,您的答案都会占一行。

正确答案按主题分组,并获取每个主题的最短年份。

线索够多了吗?

Your answer gets a row for every distinct combination of subject and year.

The correct answer GROUPS BY the subject, and gets the MIN year per subject.

Enough of a clue?

苄①跕圉湢 2024-07-19 06:57:30
SELECT subject, MIN(yr)
FROM nobel
GROUP BY subject;

耶!

SELECT subject, MIN(yr)
FROM nobel
GROUP BY subject;

Yay!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文