语法顺序——特大地震
当查询执行时,一旦遇到第一个错误就会停止,并返回一条错误消息。由于查询是按步骤顺序处理的,它停在的第一个错误将与处理顺序有关。
- 首先处理
FROM,用于检查被查询的表是否存在于数据库中。 - 如果指定了行过滤条件,
WHERE总是在FROM之后处理。被用于过滤条件的列必须存在。 - 只有当数据已准备好提取并显示或返回给用户时,才会处理
SELECT。
本练习包含 3 个查询——每个查询都带有错误。您的任务是找出错误并修复它们。
请注意,查询结果 选项卡下方的红色文字是对错误的描述。
本练习是课程的一部分
改进 SQL Server 中的查询性能
交互式实操练习
通过完成这段示例代码来试试这个练习。
/*
Returns the location of the epicenter of earthquakes with a 9+ magnitude
*/
-- Replace Countries with the correct table name
SELECT n.CountryName AS Country
,e.NearestPop AS ClosestCity
,e.Date
,e.Magnitude
FROM Countries AS n
INNER JOIN Earthquakes AS e
ON n.Code2 = e.Country
WHERE e.Magnitude >= 9
ORDER BY e.Magnitude DESC;