1. Learn
  2. /
  3. 课程
  4. /
  5. SQL 中的数据处理

Connected

道练习

筛选您的 CASE 语句

让我们生成一份意大利球队 Bologna 的获胜比赛清单吧!两张表中包含不少其他球队,因此要得到可用的查询,关键是在 WHERE 子句中将 CASE 语句用作筛选条件。

CASE 语句可让您对感兴趣的数据进行分类,并排除不感兴趣的数据。要实现这一点,您可以在 WHERE 子句中使用 CASE 语句来过滤不想看到的输出。

您可以这样设置:

SELECT *
FROM table
WHERE 
    CASE WHEN a > 5 THEN 'Keep'
         WHEN a <= 5 THEN 'Exclude' END = 'Keep';

本质上,您可以像使用数据库中的其他列一样,将 CASE 语句当作一个用于筛选的列。唯一的不同是,在 WHERE 中您不为该语句起别名。

说明

100 XP
  • 在 WHERE 子句中使用 CASE 语句,筛选 hometeam_id 为 9857 且主队进球数大于客队进球数的比赛。
  • 在 WHERE 子句中使用 CASE 语句,筛选 awayteam_id 为 9857 且客队进球数大于主队进球数的比赛。
  • 结束 CASE 语句时,请排除 Bologna 未获胜的比赛。