0

我正在运行一个查询来检索一个整数,但想要检查空值。如果为 null,我希望查询返回 0。我该怎么做?我在下面尝试了这个,但它不起作用

select NVL(A_COUNT, 0) from MYTABLE where VEH_YEAR = '2003';

如果 A_COUNT 为空,我希望查询返回 0。在上述情况下,我在 VEH_YEAR 列中没有值 2003。如果我在 VEH_YEAR 列中有值 2003 但 A_COUNT 为空,则查询有效。

4

2 回答 2

3

更好的版本是,使用之前使用的Aggregate函数。MAXNVL

select NVL(MAX(A_COUNT),0) from MYTABLE where VEH_YEAR = '2003';
于 2015-05-01T04:51:35.440 回答
0
SELECT NVL((select A_COUNT from MYTABLE where VEH_YEAR = '2003'), 0) A_COUNT from dual;

这行得通。

于 2015-04-30T23:15:28.937 回答