如果值存在则聚合函数返回 true

ata*_*ata 4 sql oracle aggregate oracle12c

我有一些 SQL 查询,它返回某些字段的总和,并且有一个与这些值关联的标志列,“Y”或“N”。

如果任何一条记录包含“Y”,是否有一个聚合函数将在此标志列上返回真/假?

Sal*_*n A 5

您可以将条件聚合包装在CASE表达式中:

CASE
    WHEN COUNT(CASE WHEN column = 'Y' THEN 1 END) > 0 THEN 'true'
    ELSE 'false'
END
Run Code Online (Sandbox Code Playgroud)