数据库中的字段为空时,使用isnull函数
2007-06-26 17:08
337 查看
string sql=SELECT * FROM DownPC where ServerIp='';
在使用上面的SQL执行查询的时候遇到一个问题,如果ServerIp内的值为null的时候查询不出来,需要把该字段的值先清空一下,然后在执行上面的查询语句就可以了,但是我现在的问题是不能保证ServerIp的值在为空的时候自动清空,所以试了好多种方法都没有结果。
最后查询SQL Server的函数的时候找到一个IsNull()函数。IsNull函数的作用是使用指定的替换值替换Null。
语法
ISNULL ( check_expression , replacement_value )
备注
如果 check_expression 不为 NULL,则返回它的值;否则,在将 replacement_value 隐式转换为 check_expression 的类型(如果这两个类型不同)后,则返回前者。
参数
check_expression
将被检查是否为 NULL 的表达式。check_expression 可以为任何类型。
replacement_value
当 check_expression 为 NULL 时要返回的表达式。replacement_value 必须是可以隐式转换为 check_expresssion 类型的类型。
返回类型
返回与 check_expression 相同的类型。
示例
A. 将 ISNULL 与 AVG 一起使用
以下示例查找所有产品的重量平均值。它用值 50 替换 Product 表的 Weight 列中的所有 NULL 项。
复制代码
USE AdventureWorks;
GO
SELECT AVG(ISNULL(Weight, 50))
FROM Production.Product;
GO
(以上来自SQL Server联机丛书内容)
所以我现在重新写我上面的SQL语句,
string sql=SELECT * FROM DownPC where isnull(ServerIp,0)=0;
这样无论该字段内是null还是空都可以查询出来了。
在使用上面的SQL执行查询的时候遇到一个问题,如果ServerIp内的值为null的时候查询不出来,需要把该字段的值先清空一下,然后在执行上面的查询语句就可以了,但是我现在的问题是不能保证ServerIp的值在为空的时候自动清空,所以试了好多种方法都没有结果。
最后查询SQL Server的函数的时候找到一个IsNull()函数。IsNull函数的作用是使用指定的替换值替换Null。
语法
ISNULL ( check_expression , replacement_value )
备注
如果 check_expression 不为 NULL,则返回它的值;否则,在将 replacement_value 隐式转换为 check_expression 的类型(如果这两个类型不同)后,则返回前者。
参数
check_expression
将被检查是否为 NULL 的表达式。check_expression 可以为任何类型。
replacement_value
当 check_expression 为 NULL 时要返回的表达式。replacement_value 必须是可以隐式转换为 check_expresssion 类型的类型。
返回类型
返回与 check_expression 相同的类型。
示例
A. 将 ISNULL 与 AVG 一起使用
以下示例查找所有产品的重量平均值。它用值 50 替换 Product 表的 Weight 列中的所有 NULL 项。
复制代码
USE AdventureWorks;
GO
SELECT AVG(ISNULL(Weight, 50))
FROM Production.Product;
GO
(以上来自SQL Server联机丛书内容)
所以我现在重新写我上面的SQL语句,
string sql=SELECT * FROM DownPC where isnull(ServerIp,0)=0;
这样无论该字段内是null还是空都可以查询出来了。
相关文章推荐
- 数据库中的字段为空时,使用isnull函数
- 数据库中的字段为空时,使用isnull函数
- 数据库中的字段为空时,使用isnull函数
- 数据库设计之数据库tinyint字段与Int字段的使用
- 使用java中的关键字(如: delete)用作数据库表中的字段名时,如何取数据
- 使用Gridview绑定数据库中的图片(Image字段)
- 使用SQL Script更改数据库中字段的默认值
- mssql数据库出现所有文本字段被插入木马脚本后使用批量清理
- hive:数据库“行专列”操作---使用collect_set/collect_list/collect_all & row_number()over(partition by 分组字段 [order by 排序字段])
- 使用T4模板为EF框架添加实体根据数据库自动生成字段注释的功能
- 数据库-使用查询到的不同字段的两条SQL的结果进行筛选查询
- 地磅称量系统之(37~39) 直接向数据库的数据表WtBill添加测试数据以及绑定用户控件和使用编码的方式控制dataGridView控件的每列属性和添加数据数据库的表中不存在的字段(非绑定列)
- 数据库中使用自增量字段与Guid字段主键的性能对比
- asp.net中使用 Repeater控件拖拽实现排序并同步数据库字段排序
- 谨慎使用单精度/双精度数值类型(适用于数据库字段类型)
- 根据数据库中字段的不同数字,页面使用不同的html标签
- 设计数据库字段或者java中使用boolean型时需谨慎
- 试了在rails中使用中文数据库字段还是不行的
- 使用数据库(mysql)字段保存文件
- [SQL]查询某一个字段在某一段时期数据库中使用到的记录