注册 登录
编程论坛 SQL Server论坛

关于null值

棉花糖ONE 发布于 2007-03-22 09:21, 608 次点击

空值定义:
空值表示一个列或变量的值未知,并非简单的认为是空字符串或者0,sql中可以用is null和is not null
来判断一个列或者一个字段是否为null。

空值的计算:
sql server中不管是数或字符串进行相关操作返回的值都是null
例:
select 1+null as value

value
-----------
NULL

select 'aa'+null as value

value
-----
NULL

oracle 中数字与null进行相关操作返回的也是空值,但是字符串与null进行的操作返回的却不是空

SQL> select 'aa'||null value from dual;

VA
--
aa

sql server中使用聚合函数对含有null的字段进行操作时会忽略空值。(count,sum,avg)


下面来介绍isnull函数
语法
isnull(字段或变量,替换值) --oracle中用nvl替换

在设计表时,尽量不要使用null,对null值的列建索引会导致全表扫描,对于可以含有null值的列
尽量设置一个默认值。

6 回复
#2
liuminghui2007-03-22 10:27

#3
liuminghui2007-03-22 10:28
orcal我没有用过
#4
feeless2007-03-22 11:52
支持下。
#5
cyyu_ryh2007-03-22 11:59
太深奥了
#6
bygg2007-03-22 12:47

在设计表时,尽量不要使用null,对null值的列建索引会导致全表扫描,对于可以含有null值的列
尽量设置一个默认值。

--------------------------------------------------------------------------------------------------------
这句精典.

#7
xiyou4192007-04-03 09:06
1