在sql中NULL就是空值,通常都是管NULL叫空值,但是这种叫法不准确,因为null不是值,它表示数值未知或者不确定
⑵ SQL查询结果中的NULL代表什么意思
null事实上代表的意思是“不知道”,和“空”(empty)还是有细微的区别的:
创建数据表的时候某列(假设为title)的约束条件为不允许为“不知道”,写为not
null;即不允许不为该列赋值;
此后你在使用SQL将其赋值为null(update
……
set
titile=null或者insert
into……values
(null,))等时,会报错。但是如果将其赋值为空('')时,则不会报错。
另外在select查询时,where子句中如果查询为null的应该为
where
title
is
null,不为null的是where
title
is
not
null;
而查询为空的则是where
title=''
不为空的是
where
title<>'',简单描述,希望能帮到你。
⑶ SQL支持NULL(空值)的概念,NULL是指( )
选:C
空值和null是不同的,空值是指没有放任何数据,只有
“”而null是指不确定的值,可能有也可能没有
⑷ SQL Server中,null 与not null 在什么时候用
SQL Server中空值以“null”表示。
要测试一个“对象”为空值时得到结果为真的话,用以下语句:"对象 IS NULL"。
要测试一个“对象”不为空值时得到结果为真的话,用以下语句:"对象 IS NOT NULL"。
例:
DECLARE@AINT--随便定义一个变量
SET@A=NULL--让这个变量为空值
IF@AISNULL--如果为空
BEGIN
SELECT'AA'ASLS
ENDELSEBEGIN
SELECT'BB'ASLS
END
--运行结果AA
IF@AISNOTNULL--如果不为空
SELECT'AA'ASLS
ELSE
SELECT'BB'ASLS
--运行结果BB
SET@A=1--让这个变量为1
IF@AISNULL--如果为空
BEGIN
SELECT'AA'ASLS
ENDELSEBEGIN
SELECT'BB'ASLS
END
--运行结果BB
IF@AISNOTNULL--如果不为空
SELECT'AA'ASLS
ELSE
SELECT'BB'ASLS
--运行结果AA
相关知识点延伸:
1、“null”的意思是“空值”。“not null”是not(否)运算,加null(空值),意思即“不是空值”。
2、实际运用中,一般还要加一个“IS”:
如“is null”如果是空值返回“真”。
如“is not null”如果不是空值返回“真”。
3、在SQL Server中,空值不应该与实际数值比较大小,但不禁止(不报错)比较大小,如果进行比较,结果将为“否”。也就是说:
“1>null”,“1=null”,“1<null”
的逻辑运算结果都为否。
需要注意的是,要判定一个值是否为空
3、在实际工作中,如果针对某个含有空值的字段根据大小值进行查询的话,如果没考虑到,就会出现:
大于某值的记录数 (+) 小于或等于某值的记录数 (不等于) 总的记录数
此外,多表联查时,如果没考虑到空值可能会出现意外的数据查询错误。
⑸ 如何正确理解 SQL 中的 NULL
SQL中Null的中文叫法是“空值”,其意思为"没有值"的值,它的数据类型是未知的,在数据库表里Null不占用物理磁盘空间,因为Null就是空无一物嘛,没有东西自然就没有占用。数据库表实际是二维表,新建表时所有的字段值都是Null(空值),同样添加新纪录时未指定字段值前每个字段值也是Null,每个网格由横向(字段名)和纵向记录行确定,当一个网格没有写入数据前其存储的值就是Null(空值),这是天然属性使然,写入数据后其值就变为非"空值",如果我们再将该网格里的数据值擦除掉它又会变为“空值”。筛选含“空值”的记录可以使用"expr is null",反之可以使用“expr is not” 。
说到Null不得不提到"零长度字符串"或者说"空字符串"(Sql中用一对没有间隔单引号''表示),对于这两者很多人会搞混淆。其实它们有根本上的区别,前者的数据类型是未知的,而后者的数据类型则是明确的即字符型,存储“空字符串”是要占用物理磁盘空间的。在不存在约束的情况下我们几乎可以将Null值写入任何数据类型的字段里(请注意写入Null值其背后的含义是擦除对应数据表网格中的数据值),而空字符串''只能写入字符串型字段里。还有Null值可以是“天然”就存在的,而空字符串则不会“天然”存在,它必须人为或以默认值形式写入数据表才会出现。
Null在Sql语言中是一个很重要的概念,只有正确理解它才能把握好这门语言。
⑹ 关于sql聚集函数的正确描述是
SQL允许定义函数、过程和方法。定义可通过SQL的有关过程的组件,也可以通过外部的程序设计语言,如Java,C或C++。SQL标准所定义的语法,与大多数数据库实现的自身的非标准版本的语法不同。函数和过程允许“业务逻辑”作为存储过程记录在数据库中,并在数据库中执行。
求和函数SUM( )用于对数据求和,返回选取结果集中所有值的总和。语法如下。
SELECT SUM(column_name)
FROM table_name
说明:SUM()函数只能作用于数值型数据,即列column_name中的数据必须是数值型的。
(6)sql中null的叙述正确的是扩展阅读:
理解聚集和SQL的 WHERE 以及 HAVING 子句之间的关系对我们非常重要。 WHERE 和 HAVING 的基本区别如下: WHERE 在分组和聚集计算之前选取输入行(因此,它控制哪些行进入聚集计算), 而 HAVING 在分组和聚集之后选取分组的行。因此,WHERE 子句不能包含聚集函数; 因为试图用聚集函数判断那些行输入给聚集运算是没有意义的。
相反,HAVING 子句总是包含聚集函数。 (严格说来,你可以写不使用聚集的 HAVING 子句, 但这样做只是白费劲。同样的条件可以更有效地用于 WHERE 阶段。)