当前位置:  开发笔记 > 编程语言 > 正文

当没有找到行时,是否可以强制查询中的reutrn值?

如何解决《当没有找到行时,是否可以强制查询中的reutrn值?》经验,为你挑选了1个好方法。

我有一个简单的查询:

Select qty from X where id=....;

此查询始终返回0或1行.当它返回1行时一切正常.但如果它返回0行,我的查询将失败,因为qty在计算中使用.(这是Select statment中的Sub查询).

我需要以某种方式确保查询始终返回1行.

我试过了:

Select coalesce(qty,0) from X where id=....;

但它没有帮助,好像没有行,合并是没用的.如果没有发现它应该给出的行0

我该如何解决?



1> Elad..:

你可以这样做:

SELECT COALESCE( (SELECT qty from X where id=....), 0)

如果内部SELECT声明没有返回任何内容,COALESCE则会0在外部SELECT声明中给出.

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有