导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

一个表里的一个NUMERIC型字段的值为NULL,怎么把它去掉!

cqnucsmoon 2003-12-10 04:56:06
如题,当用SET 字段=''肯定不行的,数据类型转换错误,不知道有没有办法?
...全文
20 点赞 收藏 11
写回复
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
a_stupid_boy 2003-12-10
update set 字段 =0 where 字段 is null
回复
dlpseeyou 2003-12-10
定义成字符型,
回复
cqnucsmoon 2003-12-10
update 表 set 字段 ='' where 字段 is null
这句是肯定不行的,因为这个字段是数值型的.

只想把显示为<NULL>的地方统统改为没有,即空白.
回复
victorycyz 2003-12-10
是删掉还是改掉?
回复
dlpseeyou 2003-12-10
update 表 set 字段 ='' where 字段 is null
回复
CrazyFor 2003-12-10
不要让它等于空,那它只能等于0,只有字符型才可以等于:''

回复
dlpseeyou 2003-12-10
IS [NOT] NULL
确定一个给定的表达式是否为 NULL。

语法
expression IS [ NOT ] NULL

参数
expression

是任何有效的 Microsoft® SQL Server™ 表达式。

NOT

指定布尔结果取反。谓词反转其返回值,值不为 NULL 时返回 TRUE,值为 NULL 时返回 FALSE。

结果类型
布尔型

返回代码值
如果 expression 的值是 NULL,则 IS NULL 返回 TRUE;否则,返回 FALSE。

如果 expression 的值是 NULL,则 IS NOT NULL 返回 FALSE;否则,返回 TRUE。

注释
若要确定表达式是否为 NULL,请使用 IS NULL 或 IS NOT NULL,而不要用比较运算符(例如 = 或 !=)。如果有一个参数为 NULL 或两个参数都为 NULL,那么比较运算符返回 UNKNOWN。

示例
在下面的示例中,对于所有预付款少于 $5,000 或者预付款未知(或为 NULL)的书,返回它们的书号及预付款。请注意,显示的结果是在示例 C 执行后所返回的那些结果。

USE pubs
SELECT title_id, advance
FROM titles
WHERE advance < $5000 OR advance IS NULL
ORDER BY title_id

回复
cqnucsmoon 2003-12-10
马可,是这样的,假设我的表如下:

编号 姓名 成绩1 成绩2
001 张三 98 <NULL>
002 王五 <NULL> 85

因为成绩1或成绩2中有一个没有录入,但会产生一个<NULL>值,现在我想不置为0,让它为空,看起来如下:

编号 姓名 成绩1 成绩2
001 张三 98
002 王五 85


回复
dlpseeyou 2003-12-10
delete 表名 where 字段 is null
回复
lynx1111 2003-12-10
update tb set colname=null
回复
txlicenhe 2003-12-10
1:
delete 表 where 字段 is null
2:
update 表 set 字段 = 0 where 字段 is null
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告