我的教授是不是在搞我,因为 SQL 代码没有运行他想要的功能

问题描述 投票:0回答:1

如果查询要求我执行以下操作:

enter image description here

根据给定的数据集:

enter image description here

结果不应该是空白吗?因为只有 Sam 是四年级的学生,但 Sam 甚至没有入学。那么我们如何才能将 Sam 包含在这个查询中呢?

因为我的教授说输出是:
enter image description here

但我说出了上面的论点,他回答说:

嗨,
这是典型的蕴涵情况,如果前提为假,则蕴涵始终为真。

我提交的查询是:

SELECT S.snum, S.sname, S.year
FROM STUDENT AS S, ENROLLMENT AS E
WHERE S.year = 4
  AND S.snum = E.snum
  AND (E.cnum LIKE 'c%' OR E.cnum LIKE 'C%')
GROUP BY S.snum, S.sname, S.year
HAVING MIN(grade) >= 90
ORDER BY S.snum ASC, S.sname ASC, S.year ASC;

我确实理解他所说的推论。但我只是不明白它如何适用于这种情况。任何人都可以证明他的回应是合理的吗?谢谢。

如果有人对我问这个问题有疑问,请提前道歉,我仍然不知道为什么 stackoverflow 上的每个人都准备好扑向任何菜鸟问题。

sql database inference
1个回答
0
投票

这真的是给出的唯一数据集吗?如果是这样,它应该是空白的,因为正如你所说,唯一的第四年是 Sam,并且数据集中唯一至少具有 90 分的学生是基于 Snum 的 Mary。尽管如此,再次询问你的教授给出的数据集中是否有错误或者是否缺乏确定你的答案。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.