OracleDB:COALESCE 和 ORA-01427:单行子查询 returns 多于一行

OracleDB: COALESCE and ORA-01427: single-row subquery returns more than one row

我使用 COALESCE 函数来避免 ORA-01427 和 pick up first non-null value

COALESCE((
        SELECT c.SCounts
        FROM counts c
        WHERE c.ID = 10000
        ), 0)

当我注释这段代码时一切正常。

我想上面的 COALESCE 被嵌入到 SELECT 中,像这样:

SELECT
COALESCE((
        SELECT c.SCounts
        FROM counts c
        WHERE c.ID = 10000
        ), 0)
FROM counts

如果这是真的,那么问题可能是 select 将 return 与 table COUNTS 的行一样多。