我有一个简单的查询,它选择一个字段并且仅选择一行,因此选择一个值。

如果查询结果为空集,有什么方法可以使它返回NULL?而不是返回零行?

我想我需要使用不存在的东西,然后为空,但不确定。

最佳答案

select
  (Your entire current Select statement goes here) as Alias
from
  dual
dual是一个内置表,其中只有一行,可以用于这样的目的。在Oracle中,这是强制性的。 MySQL supports it,但您也可以仅选择一个值而无需指定表,如下所示:
select
  (Your entire current Select statement goes here) as Alias

无论哪种情况,您都选择一个值。这意味着:
  • 如果您的选择返回一个值,则返回该值。
  • 如果您的select语句返回一列,但没有行,则将返回NULL。
  • 如果您的select语句返回多列和/或多行,则此操作将无效,并且查询将失败。
  • 10-05 20:29
    查看更多