FREE教程
目录
  • 主页
  • Oracle教程
  • redis教程
  • hadoop
  • ODI教程
  • BIEE教程
Oracle基础教程
Oracle基础教程 Oracle介绍 Oracle安装 Oracle客户端工具 Oracle服务 Oracle用户 SQL语句介绍 案例所需表结构 Oracle建表(create table) Oracle查询(select) Oracle插入(insert into) Oracle更新(update) Oracle删除(delete) Oracle运算符 Oracle字符串连接符|| Oracle DISTINCT Oracle 条件查询 =、IN、LIKE、BETWEEN...AND Oracle集合运算 Oracle连接查询 Oracle的伪列 Oracle 函数 Oracle字符型函数 Oracle日期型函数 Oracle数值型函数 Oracle转换函数 Oracle聚合函数 Oracle子查询 Oracle synonym 同义词 Oracle序列 Oracle视图 Oracle索引 Oracle分区详解和创建 Oracle如何在分区表上创建索引 oracle merge into命令 oracle物化视图 oracle分析函数_开窗函数详解 Oracle行转列(PIVOT) Oracle列转行_unpivot Oracle创建物化视图
分类导航
Oracle基础教程 PL/SQL教程 Oracle管理 Oracle备份和恢复 Oracle RAC Oracle优化 Oracle技术 redis基础教程 hadoop教程
    首页->Oracle教程->Oracle基础教程->Oracle 条件查询 =、IN、LIKE、BETWEEN...AND
Oracle DISTINCT
Oracle集合运算

Oracle 条件查询

Oracle条件查询时经常使用=、IN、LIKE、BETWEEN...AND来作为条件查询的操作符。在Oracle select 查询中where条件经常使用到这几个操作符。下列案例所需表结构参考:学生系统表结构。

=操作符

在条件查询语句中“=”表示列值等于一个固定值所查询出的结果。


案例1、查询学生成绩表“score”中课程id为“R20180101”,成绩为“85”分的同学信息。

select t.stuid,
       t.courseid,
       t.score,
       b.stuname,
       b.sex,
       b.age,
       b.classno,
       b.grade
  from score t, stuinfo b
 where t.stuid = b.stuid
   and t.courseid = 'R20180101'
   and t.score = '85'

结果如下:

Oracle条件查询=

IN操作符

在 Where 子句中可以使用 IN 操作符来查询其列值在指定的列表中的查询结果。


案例2、查询学生成绩表“score”中课程id为“R20180101”,成绩为“79”、“85”、“89”分的同学信息。

--利用逻辑运算符or 和条件"=" 查询
select t.stuid,
       t.courseid,
       t.score,
       b.stuname,
       b.sex,
       b.age,
       b.classno,
       b.grade
  from score t, stuinfo b
 where t.stuid = b.stuid
   and t.courseid = 'R20180101'
   and (t.score = '85' or t.score ='89' or t.score ='79');
-- 利用Oracle操作符”IN“查询  
select t.stuid,
       t.courseid,
       t.score,
       b.stuname,
       b.sex,
       b.age,
       b.classno,
       b.grade
  from score t, stuinfo b
 where t.stuid = b.stuid
   and t.courseid = 'R20180101'
   and t.score in ('85','89','79');

结果如下:

Oracle IN

BETWEEN...AND

在 WHERE 子句中,可以使用 BETWEEN...AND 操作符来查询列值包含在指定区间内的查询结果 。


案例3、查询学生成绩表“score”中课程id为“R20180101”,成绩在70-95之间的学生信息。

select t.stuid,
       t.courseid,
       t.score,
       b.stuname,
       b.sex,
       b.age,
       b.classno,
       b.grade
  from score t, stuinfo b
 where t.stuid = b.stuid
   and t.courseid = 'R20180101'
   and  t.score between '70' and '95'

结果如下:

Oracle BETWEEN...AND

LIKE模糊查询

在Oracle条件查询where条件之中,当遇到查询值不清楚时,可以利用模糊查询LIKE关键字进行where条件的模糊查询。LIKE 关键字通过字符匹配检索出所需要的数据行。字符匹配操作可以使用通配符“%”和“_” :

1、%:表示零个或者多个任意字符。

2、_:代表一个任意字符。

3、\:指转义字符,“\%”在字符串中表示一个字符“%”。


案例4、查询学生基本信息表“STUINFO”中姓“张”的学生基本信息:

select * from STUINFO t where t.stuname like '张%';

结果如下:

like模糊查询


案例5、查询学生基本信息表“STUINFO”中姓“张”的,并且姓名长度是两个字的学生基本信息:

select * from STUINFO t where t.stuname like '张_';

结果如下:

like模糊查询

Oracle DISTINCT
Oracle集合运算
关于我们 | 免责声明 | Copyright ? 2018 FREE教程 | 备案号:闽ICP备18020855号-1
公安备案

闽公网安备 35020602001245号