Oracle中NOT IN的问题
今天在开发的时候需要查询数据库中哪些学生有多个学号,写的sql如下:
select * from(
select count(t1.xh) as xhs,t2.uuid,t3.xm as xsxm,t3.sfzjh, t1.xjzt as xjzt from hust_xs_jb t1
INNER JOIN hust_xx_identity t2 on t1.sfid= t2.sfid
INNER JOIN hust_xx_profile t3 on t2.uuid=t3.uuid group by t2.uuid ,t3.xm, t3.sfzjh, t1.xjzt order by t3.xm) t
where xhs>=2 and xjzt not in('15','17','19','21','30','31','32','33','34','35','36','37','38','39','40','51','52','53','54')
查出的数据为空,但是去掉where条件中的第二个条件(也就是NOT IN条件)却能查出31条数据,且其中只有一条的数据的XJZT字段为33,其他的都为null,应该查出30条数据啊,这是为什么呢?难道NOT IN会将null值过滤掉?于是将sql稍加修改:
select * from(
select count(t1.xh) as xhs,t2.uuid,t3.xm as xsxm,t3.sfzjh, t1.xjzt as xjzt from hust_xs_jb t1
INNER JOIN hust_xx_identity t2 on t1.sfid= t2.sfid
INNER JOIN hust_xx_profile t3 on t2.uuid=t3.uuid group by t2.uuid ,t3.xm, t3.sfzjh, t1.xjzt order by t3.xm) t
where xhs>=2 and (xjzt not in('15','17','19','21','30','31','32','33','34','35','36','37','38','39','40','51','52','53','54') or xjzt is null)
就能查出所需要的30条数据了。网上查了一下,说Oracle not in 如果返回的有null值的话,就不会有记录。
相关文档:
最近工作稍微比较空闲,便把使用DBCA 创建数据库时的输出的脚本拿来研究研究,并参照脚本文件,手动实现一个数据库的创建过程。首先使用DBCA工具创建一份建库脚本,整个脚本文件包含如下文件,
感觉应该是从BAT文件开始入手,打开BAT文件查看内容如下:
mkdir f:\oracle\product\10.2.0\admin\test\adump
mkdir f:\oracl ......
Oracle数据库SCN号详解:
系统检查点scn(v$database(checkpoint_change#))
数据文件检查点(v$datafile(checkpoint_change#))
数据文件终止scn(v$datafile(last_change#))
数据文件中存放的检查点
启动scn (v$datafile_header(checkpoint_change#)
1、系统检查点scn
当一个检查点动作完� ......
Oracle,MySQL,MSSQL Server和Access数据库的统计函数
我们在编程中常用的统计函数有计数,求和,求最大值,求最小值,求平均,方差和标准差.
方差(Variance)
方差是标准偏差的平方。组中的值,与它们平均值之间偏离程度的度量。
标准偏差(Standard Deviation)
一个参数,指出一种方式,一个概率函数以这种方式分布在平均值� ......
转自:http://blog.csdn.net/scorpio3k/archive/2009/05/09/4162079.aspx
在很多情况下,我们使用Hibernate在已经建立好数据库的基础上。在oracle中,如果已经建立好的数据库中使用了sequence
,则可以按照下面的步骤把它引入到Hibernate中:
1、在oracle 首先创建sequence
......
外部表作用:加载和卸载数据
外部表都是只读表,不能进行update,insert,delete操作.
Oracle 提供两种访问驱动: ORACLE_LOADER, ORACLE_DATAPUMP(oracle 10.2后新增的驱动)
ORACLE_LOADER: 它利用oracle loader技术从外部表读取数据. 它还具有类似SQL*Loader工具控制文件语法的数据映射能力.
ORACLE_DAT ......