共享与专用服务器的区别:
专用服务器(DEDICATED):一个客户端连接对应一个服务器进程
共享服务器(SHARE):多个客户端连接对应一个服务器进程,服务器端存在一个进程调度器来管理。它必须使用net services.也就是说必须配置tns。
它适合用于高并发,事物量小,如果这个时候采用了共享模式,可以大大减少由于高度并发对于ORACLE服务器的资源消耗。
执行计划查看方法:
从右侧最远的那步执行,然后执行其父节点,
NULL:
A minus B
A not in B
若B表中用到的字段中包含空,则以上两个结果不同;
原因:
(1,2) not in (*,null) : return false
Oracle中的层次查询
select
A.HAKO_NO
from T_KB_KONYUIRAI A
where A.DEL_FLG='0'
and A.KOJI_NO='0000000001'
start with A.PRE_CHM_NO is null
connect by nocycle PRE_CHM_NO = prior A.CHM_NO
start with 是指从哪个节点开始递归查询;
connect by nocycle,是指查询下一行的条件,或者叫连接条件;
其中nocycle是当递归出现环的时候终止该分支查询,这是oracle 10G中新添加的功能,不使用nocycle,
当查询时出现环时,oracle会报错;
connect by prior:遍历方向;
从父节点往子节点遍历:connect by prior后紧跟父列;
Oracle中的表关联
left join
LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。
即结果中包含左表的所有记录,即使与某些记录与右表关联不上;
inner join(等值连接) 只返回两个表中联结字段相等的