oracle4--基本用法

1. 高级查询

in(not in)
like (not like )信息匹配 包括通配符%_ ;
‘%30%%’ escape ‘’
包含“30%”的字符串,“\”指转义字符,“%”在字符串中 表示一个字符“%”。
‘%30%%’ escape ‘\’ 其中escape为转义的指示名词,也就是说escape后指定哪个符号,哪个符号就是转义符号。
between…and…

  update emp set ename ='SMI%TH' where ename ='SMITH';
  select * from emp where ename like '%\%%' escape '\';

2. 集合运算
Nuion (并集),SQL优化 where 后面用 or 的 时候 用并集
Intersect(交集): and 返回两个查询共有的记录
Minus(减去):差集
输入的查询1 <集合运算符> 输入的查询2 [<集合运算符> 输入的查询3 ….] [ORDER BY]
集合运算的规范:
(1)输入的查询不能包含order by 字句
(2)可以为整个集合运算结果选择性的增 加一个 ORDER BY 字句
(3)每个单独单独的查询可以包含所有逻辑查询处理阶段(处理控制排列顺序的order by 字句);
(4)两个查询必须包含相同的列数
(5)相应列必须具有兼容的数据类型。
(6)集合运算结果中的列名由输入的查询1决定,如果要为结果分配结果列,应该在输入的查询1中分配相应的别名
(7)集合运算时,对行进行比较时,集合运算认为两个null相等
(8)Union 支持distinct 和all,不能显示指定distinct字句,如果不指定all,则默认使用distinct
(9)Interest 和except(minus)默认使用distinct,不支持all

3.连接
连接查询:只通过多张表的关联关系的匹配得到对应的内容
链接种类:等值连接:= 两个表中的相关的列进行等值的连接
不等连接: 两个表中的相关的两列进行不等连接 比较符号>,<,>=,<=
内连接:只有关系匹配的数据才会进行显示
外连接:会有某侧的数据全部显现出来,另一侧的数据只有能关联上的就能匹配出来,没有就显示空
交叉连接(cross join)不带where条件的字句,它将返回被连续的两个表的笛卡尔积返回的结果时两个表的行数的乘积
where、and的区别 where先连接表,在进行条件筛选,and只筛选附表中的内容
外多内少 选择in 外少内多 选择exists
【根据rowid 删除表中的数据】
Oracle的伪列
Rowid :查询出来的是物理地址,rowid 值可以唯一的标识表中的一行
Delete from 表1 where t1.rowid <(select max(rawid) from 表2 where t1.id=t2.id);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值