SQL-ex练习37多库查询结果不一致错误原因问询
你的SQL存在以下几个核心问题:
- 返回字段不符合要求:题目要求返回符合条件的船级(class),但你的查询返回的是
Outcomes表中的舰船名,输出内容本身就不匹配题目要求。 - 统计范围缺漏:题目明确要求统计范围包含
Outcomes表中的所有舰船,你只统计了Ships表中各船级的舰船数量,完全没有考虑Outcomes里不在Ships表中的舰船,统计口径完全错误。 - 匹配逻辑错误:你直接拿
Outcomes中的舰船名ship去匹配船级class,这一逻辑只适用于首舰(lead ship,船名和船级名一致的情况),普通舰船的船名和所属船级名并不相同,这个匹配规则本身就不成立。 - 没有处理重复值:
Outcomes表中同一艘船可能因为参加多场战役出现多条记录,你的查询没有对舰船去重,会返回重复结果。 - 覆盖场景不全:如果某个船级的所有舰船都只出现在
Outcomes表中、没有录入Ships表,你的查询逻辑完全无法识别这类船级,自然会漏返回符合条件的结果。
内容的提问来源于stack exchange,提问作者user17064562
相关产品推荐
相关产品推荐

