解决用 VB 中用 ADO 访问 数据库时 SQL 查询处理 Null 值的问题( 使用 iff(isNull(字段), 为空时的值,不为空时的值) 来处理)

时间:2021-04-05 17:30:07

程序的环境是 VB6 + ADO + Access,在用 SQL 语句查询时,希望把两个字段合并成一个字段,但其中一个字段 Null 值直接导致两个字段合并后也变成了 Null 值。之前只能用 VB 中的 IsNull 分别处理两个字段的值,前段时间想尝试用 SQL 语句直接解决,确一直未能成功, 差点放弃之际找到了答案,总结如下:

目的

实现 Select ( 字段1 +  字段2 ) As A

问题

字段2 如果为空值 (Null),则 不论字段1 的值是否为空,A 的值为空值 (Null)

解决

1、在 Access 中,可使用 Nz(字段, 为空时的值) 来处理

2、在 VB6 + 数据库 中,则使用 iff(isNull(字段), 为空时的值,不为空时的值) 来处理