SELECT 语句中的子查询

子查询可以在 SELECT、INSERT、UPDATE 和 DELETE 语句中,同 =、<、>、>=、<=、IN、BETWEEN 等运算符一起使用。

使用子查询必须遵循以下几个规则:

  • 子查询必须括在圆括号中,除子查询在 INSERT 语句中。

  • 返回多行数据的子查询只能同多值操作符一起使用,比如 IN,ALL,ANY 操作符。

  • SELECT 列表中不能包含任何对 BLOB、ARRAY、CLOB 或者 NCLOB 类型值的引用。

  • 子查询不能直接用在聚合函数中。

  • BETWEEN 操作符不能同子查询一起使用,但是 BETWEEN 操作符可以用在子查询中。

演示数据库

在本教程中,我们将使用 LintCode 样本数据库。

下面是选自 "teachers" 教师表的数据:

下面是 "courses" 课程表的数据:

1 实例

查询 'Western Venom' 老师所教的所有课程信息。

执行输出结果

2 总结

通常情况下子查询都与 SELECT 语句一起使用,其基本语法如下所示:

其中

OPERATOR 表示 =、<、>、>=、<=、IN、BETWEEN 等运算符

练习题:SELECT 子查询

查询 'Big Data' 课程对应的老师姓名。

代码输入框:

执行输出结果

Last updated

Was this helpful?