语法
ISNULL ( check_expression , replacement_value )
【ISNULL()的正确用法】备注:
如果 check_expression 不为 NULL,则返回它的值;否则,在将 replacement_value 隐式转换为 check_expression 的类型(如果这两个类型不同)后,则返回前者。
参数:
check_expression 将被检查是否为 NULL 的表达式。check_expression 可以为任何类型。
replacement_value 当 check_expression 为 NULL 时要返回的表达式。replacement_value 必须是可以隐式转换为 check_expresssion 类型的类型。
返回类型:
返回与 check_expression 相同的类型。
注意:
在将 replacement_value 隐式转换为 check_expression 的类型(如果这两个类型不同),不光是类型的转换,还有长度的转换,返回check_expression的长度。如果replacement_value长度长于check_expression,则会自动截断,只返回check_expression长度的内容。
这种情况,如果想保留后者的长度,就要强制转换前者的长度。
另,在数据库中有几类数据类型是定长的,即长度不足时补空格:
char 固定长度的非 Unicode 字符数据,最大长度为 8,000 个字符
nchar 固定长度的 Unicode 数据,最大长度为 4,000 个字符
binary 固定长度的二进制数据,其最大长度为 8,000 个字节
在使用时请大家注意以上数据类型。
推荐阅读
- 数据库|SQL行转列方式优化查询性能实践
- mysql|一文深入理解mysql
- 达梦数据库|DM8表空间备份恢复
- 数据技术|一文了解Gauss数据库(开发历程、OLTP&OLAP特点、行式&列式存储,及与Oracle和AWS对比)
- SqlServer|sql server的UPDLOCK、HOLDLOCK试验
- 谈灾难恢复指标(RTO与RPO是什么鬼())
- RPO与RTO
- 数据库|效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】)...