获取错误
ORA-00932: inconsistent datatypes: expected CHAR got NUMBER 00932. 00000 - "inconsistent datatypes: expected %s got %s"
当我运行以下查询时

SELECT distinct
CASE when t.cancelled = 'TRUE' then '0'
else t.amount END AMOUNT,
FROM table t

如果我为 else 输出使用数字或文本运行它,就像这样,它可以工作。
SELECT distinct
CASE when t.cancelled = 'TRUE' then '0'
else 'xxx' END AMOUNT,
FROM table t

最佳答案

使用 0 而不是 '0' 。金额是一个数字,数字没有被引用。

SELECT distinct
CASE when t.cancelled = 'TRUE' then 0
else t.amount END AMOUNT,
FROM table t

关于sql - Oracle SQL 案例当 ORA-00932 : inconsistent datatypes: expected CHAR got NUMBER 00932. 00000 - "inconsistent datatypes: expected %s got %s",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26678672/

10-10 02:49