Oracle:1 not in (null)检索不出结果
in/not in在判断NULL时用的与=/<>一样的方式,即必须用is null来判断,否则始终为失败。
语句
select 'true' from dual where (1,2) not in ((2,3),(2,null));
成功的原因在于判断二元值时首先判断其中一个非null元素,该元素成功或者失败会“短路”另一个个。由于上述第一个元素就使not in成功了,因此第二个元素就不再处理。
语句
select 'true' from dual where (2,1) not in ((2,3),(2,null));
的第一个元素没有造成“短路”,因此引起了null判断,从而结果始终为失败。
请再实验语句
select 'true' from dual where (2,1) not in ((2,3),(null,3));
其结果为true,原因是第二个元素短路了第一个元素。
以上分析纯属个人观点,仅供参考。
转自http://topic.csdn.net/t/20041230/12/3688313.html
相关文档:
MySQL的ID非常方便定义,只要指定其字段的自动增量属性即可。
但是Oracle不行,需要定义sequence和triggedr,当然trigger可以不定义,但是不方便。
表定义如下:
CREATE TABLE GAME
(
ID
INTEGER ......
Oracle 的管理可以通过OEM或者命令行接口。 Oracle Clusterware的命令集可以分为以下4种:
节点层:osnodes
网络层:oifcfg
集群层:crsctl, ocrcheck,ocrdump,ocrconfig
应用层:srvctl,onsctl,crs_stat
下面分别来介绍这些命令。
一. 节点层
只有一个命令: osnodes, 这 ......
Lately,
Jordan bank upgraded their ICBS banking software to Oracle 9i and
IDS9i. The Bank also moved from a decentralized to a centralized
system.
We were contracted to monitor and diagnose performance issues during the launching phase of the new system.
The IBM server was equipped with 32 GB o ......
现在看相关的RAC结构的文章还不太理解。
现在看这个就很清楚其中的意思了。
oracle clusterware 主要有以下主要部件:
CSS: 集群同步服务
主要管理整个集群内各个节点间的情况,包括节点的添加和减少。与之对应的是ocssd 进程,如果改进程出现故障将会导致节点重启。如果使用了第三方的clusterware,css 通过第三方clus ......
IP 地址做如下修改:
Public IP 10.85.10.119/121 -- > 10.85.10.219/221
Privite IP 192.168.1.119/121 -- > 192.168.1.219/221
Virtual IP 10.85.10.122/123 -- ......