关于null值的热烈讨论,快进来发表高论吧

[复制链接]
查看11 | 回复9 | 2007-12-3 01:03:27 | 显示全部楼层 |阅读模式
ORACLE知识范围内,你见过哪些因存在NULL值而使得调用或查询的(中间或最终)结果返回NULL或FALSE值的情况?
如:
1、SELECT * from test1A whereA.cl= A.c1
/*若c1中含空值,则返回结果并非A表中的所有记录*/
2、SELECT count(*) from dualA WHERE'a' NOT IN ('b',NULL)
/*结果为0*/
3、select translate('abc',NULL,'a') from dual
/*结果为NULL*/

希大家畅所欲言、各抒己见。
灌水者后果自负


回复

使用道具 举报

千问 | 2007-12-3 01:03:27 | 显示全部楼层
null 就是"unknow"null在pl/sql中在条件中可以当boolean的false来使用,任何与null做数学运算的都是null,已经有个帖子专门讨论null了
[ 本帖最后由 dingjun123 于 2008-10-31 18:44 编辑 ]
回复

使用道具 举报

千问 | 2007-12-3 01:03:27 | 显示全部楼层
谢谢楼上的概括性的总结.
不过先还是不要把这些搬出来吧"已经有个帖子专门讨论null了"


过了这么长的时间再讨论下,或许有新的收获.
还有本贴主要是希望讨论出
在编程时使用NULL的细节问题
回复

使用道具 举报

千问 | 2007-12-3 01:03:27 | 显示全部楼层
sum(a)+sum(b)和sum(a+b)
回复

使用道具 举报

千问 | 2007-12-3 01:03:27 | 显示全部楼层
null的用法确实很繁复,平时用时注意几点就行了。
回复

使用道具 举报

千问 | 2007-12-3 01:03:27 | 显示全部楼层
呵呵
学习帖啊!
回复

使用道具 举报

千问 | 2007-12-3 01:03:27 | 显示全部楼层
原帖由 junsansi 于 2008-10-31 19:16 发表
sum(a)+sum(b)和sum(a+b)


注意一下就行了
回复

使用道具 举报

千问 | 2007-12-3 01:03:27 | 显示全部楼层
null语句,有时候在pl/sql编程中需要有,就是什么都不做,主要是增加可读性,有时候还可以防止其他错误的发生
回复

使用道具 举报

千问 | 2007-12-3 01:03:27 | 显示全部楼层
哇,又多了一两条.大家继续.
UP
回复

使用道具 举报

千问 | 2007-12-3 01:03:27 | 显示全部楼层
SELECT count(*) from dualA WHERE'a' NOT IN ('b',NULL) 结果返回0
SELECT count(*) from dualA WHERE'a' NOT IN ('a','b',NULL) 结果也是0
SELECT count(*) from dualA WHERE'a' NOT IN ('a','b',NULL) 结果为1

是不是只要not in 后的集合只要有null 结果就为null,而in 后的集合中null忽略
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行