COALESCE 函数 returns 没有行

COALESCE function returns no rows

我对 DB2 中的 COALESCE 函数有疑问。

我的发言:

SELECT COALESCE(ATTR,'NA') FROM TABLE WHERE %condition% 

如果根据条件找到 ATTR,则 ATTR 的值为 SELECT returns,但如果未找到 ATTR,则我希望 SELECT returns "NA".但是,returns 没有行。

感谢您的帮助。

神奇地创建一条线:

SELECT DISTINCT 'NA' AS ATTR FROM TABLE WHERE NOT EXISTS(SELECT 1 FROM TABLE WHERE %condition%)
UNION
SELECT ATTR FROM TABLE WHERE %condition%;

解释:Select "NA" 如果子查询 returns 没有行并将其与子查询本身合并。任何一个联合集都是空的,所以它给出了你想要的。