SELECT CASE:用作表达式的子查询返回多行



我的问题PostgreSQL得到了很好的帮助:count=0 后返回消息

此查询工作正常:

SELECT  CASE WHEN COUNT(*)  = 0 THEN 'NO RESULT'
            ELSE CAST(COUNT(*) as TEXT)
        END as myfield from mytable

但今天我需要,如果表中有一些行,我需要显示选择结果。

我试过了:

SELECT  CASE WHEN COUNT(*)  = 0 THEN 'NO RESULT'
             ELSE (select name from mytable)
        END as myfield from mytable

我得到了错误:

错误:用作表达式的子查询返回了多行

我发现了IN的功能,但没有任何改进的想法。

我认为你可以这样做:

select name from mytable
UNION ALL
SELECT 'NO RESULT'
WHERE NOT EXISTS(SELECT NULL FROM mytable)

相关内容

  • 没有找到相关文章

最新更新