开始使用免费开始使用

使用列表子查询进行筛选

本练习的目标是生成一份从未在主场城市比赛过的球队列表。请使用一个子查询,从未筛选的 match 表中生成唯一的 hometeam_ID 值列表,用于在 team 表的 team_api_ID 列中进行排除。

除了使用单值(标量)子查询进行筛选外,您还可以在子查询中创建一个值列表,根据一组更复杂的条件来筛选数据。这类子查询会为主查询生成一份「单列参考列表」。只要列表中的值与主查询表中的某一列匹配,您就无需使用连接(join)——即使该列表来自另一张表。

本练习是课程的一部分

SQL 中的数据处理

查看课程

练习说明

  • WHERE 子句中创建一个子查询,从 match 表中检索所有唯一的 hometeam_id 值。
  • team 表中选择 team_long_nameteam_short_name。在主查询中排除子查询返回的所有值。

交互式实操练习

通过完成这段示例代码来试试这个练习。

SELECT 
	-- Select the team long and short names
	___,
	___
FROM ___ 
-- Exclude all values from the subquery
WHERE team_api_id ___ ___
     (___ DISTINCT ___  FROM ___);
编辑并运行代码