oracle数据库:where子句

有时候我们需要的判断条件并不能直接得到,需要经过计算和过滤,这时候可以使用where子句来实现。
还是以这张表为例子:

在这里插入图片描述
查询id为2的人的信息,为了演示where子句的效果,所以这里故意写的复杂:

select * from student where name = (select name f判断rom student where id = 2);

这里可以拆分为两句,第一句是select name from student where id = 2,找到id是2的姓名,然后判断姓名是不是等于这个,相等就查询出来。
在这里插入图片描述
例子:查询年龄在【学生id1的年龄和id2的年龄】之间的学生的数学成绩和英语成绩:

select name,math,english from student where age between (select age from student where id = 1) and (select age from student where id = 2);

实际上是查询年龄在1820之间的学生成绩,这里只是为了演示where子句的效果,刻意这样写的。结果如下图所示:
在这里插入图片描述
where子句还有更多的用法,可以和之前的基本语法结合起来。

Guess you like

Origin blog.csdn.net/will__be/article/details/117461528