简体   繁体   English

group by 中的 case 语句

[英]Case statement in group by

Getting this error ORA-12704: character set mismatch收到此错误 ORA-12704: 字符集不匹配

SELECT name,
 YEAR,
PERIOD,
ENTITY,
CASE WHEN VALUE = 'USD Total' then 'USD' ELSE VALUE end as VALUE,
sum(amount)
from stats1
group by
name,
 YEAR,
PERIOD,
ENTITY,
CASE WHEN VALUE = 'USD Total' then 'USD' ELSE VALUE end,
''''

The below code is working but why isnt it accepting the else part....i want to pass value as it is if value is other than 'USD Total'下面的代码正在工作,但为什么它不接受 else 部分....如果值不是“美元总计”,我想按原样传递值

SELECT name,
 YEAR,
PERIOD,
ENTITY,
CASE WHEN VALUE = 'USD Total' then 'USD' end as VALUE,
sum(amount)
from stats1
group by
name,
 YEAR,
PERIOD,
ENTITY,
CASE WHEN VALUE = 'USD Total' then 'USD' end
SELECT
        name                                                            ,
        YEAR                                                            ,
        PERIOD                                                          ,
        ENTITY                                                          ,
        CASE WHEN VALUE = 'USD Total' THEN 'USD' ELSE VALUE END AS VALUE,
        SUM(amount)
FROM
        stats1
GROUP BY
        name  ,
        YEAR  ,
        PERIOD,
        ENTITY,
        VALUE

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM