过滤 关键字字段 where
1. 例如在原有的查询sql后面加上
select * from 表名 where 字段名 > 200 and 字段名 = ‘111‘ or z字段名 = ‘1112‘
2. 多条件查询 and优先级大于or 过滤条件区分大小写
3. 字符串出现的话严格区分大小写
时间的话可以用to_char(字段名,‘yyyy-mm-dd‘) 转换成字符再比较
to_char(字段名,“yyy-mm-dd”) = ‘1994-06-07‘
4. 比较运算符号和mysql 一致 唯一的区别就是<>oracle中可以表示=,赋值符号:=
5. 多值中有一个符合就显示得话可以不用一直 使用in(值,值,值,)
6. 单个模糊
where 字段名 like ‘%a%‘ %在前面 表示前面可以不管是啥 后面有a就行 后面%那个就是 理念相同
如果要表示第个2是a的 那就是where 字段名 like ‘_a%‘ 第几个就加几个下滑线 (如果这个字段的中含有下划线怎么办,like ‘ - a%‘)escape ‘ ‘
写oracle sql时有时候会有 and (字段 like ‘匹配串1’or 字段 like ‘匹配串2’or ...)这样的情况出现,下面提供一个简洁点的解决方案--
<=>
and REGEXP_LIKE(字段, ‘(匹配串1|匹配串2|...)‘) //全模糊匹配 等价于上一行,行的通
and REGEXP_LIKE(字段, ‘^(匹配串1|匹配串2|...)‘) ";//右模糊匹配
and REGEXP_LIKE(字段, ‘(匹配串1|匹配串2|...)$‘) ";//左模糊匹配
7. 空值 的条件 就是 字段值 is null 非空值条件 字段名 is not null
8. 条件优先级
最大刀最小 算术运算,链接符,比较符, (is null 或者 like 或者in) ,between ,not ,and ,or 可以使用括号 修改运算优先级
9. 字段名 between A and B
排序 order by 关键子 desc 倒序 asc 正序 默认正序
sql 实例
select * from 表名 where 字段名 = ’aaa‘ order by 字段名 desc 如果没有 字段名 = ’aaa‘ 这个条件 需要把where 去掉
1. 多个排序字段写法
order by 字段名 desc,字段名 asc 在第一个条件相同的条件下进行第二个条件排序
3.oracle 的过滤和模糊和排序
标签:修改 条件查询 大于 使用 between like lock block where
查看更多关于3.oracle 的过滤和模糊和排序的详细内容...