首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >字段不是通过创建多个记录而不是单个记录来分组的。

字段不是通过创建多个记录而不是单个记录来分组的。
EN

Stack Overflow用户
提问于 2021-12-17 00:20:13
回答 1查看 38关注 0票数 1

我被困住了,已经看了太久了。下面的查询是,我想返回一个记录,显示销售价格、成本价格和随后的费用,但是当我在我的案例中添加时,这些记录会创建多个记录。寻求任何帮助。

电流输出

预期产出

当前查询

代码语言:javascript
复制
SELECT DISTINCT
CONCAT(OBCUNO,'',OKCUNM) CUSTOMER,
OBORNO CO_NUMBER,
OBPONR CO_LINE,
OBPROJ PROJECT,
OBITNO ITEM,
OBHDPR M3_STYLE,
MMITDS CUST_STYLE,
MMFUDS DESCRIPTION,
OBORQA ORDER_QTY,
M9UCOS FACILITY_COST,
OBUCOS DISTRO_COST,

CASE WHEN OBUCOS = M9UCOS THEN 'MATCH' ELSE 'NO MATCH' END AS COST_PRC_MATCH,

OBSAPR SALE_PRC,

CASE WHEN O7CRID = 'PNP' THEN O7CRFA * OBORQA ELSE 0 END AS 'PNP CHG', 

CASE WHEN O7CRID = 'DTY' THEN O7CRAM * OBORQA ELSE 0 END AS 'DUTY CHG', 

OBVTCD VAT_CD,
SUM(CASE WHEN O7CRID = 'PNP' THEN OBSAPR * OBORQA + (CASE WHEN O7CRID = 'PNP' THEN OBORQA * O7CRFA ELSE 0 END) ELSE 0 END) AS TOTAL_LN_AMT
FROM MVXJDTA.OOLINE
    LEFT JOIN MVXJDTA.OOLICH 
        ON O7CONO = OBCONO
        AND O7ORNO = OBORNO
        AND O7PONR = OBPONR
    LEFT JOIN MVXJDTA.OCUSMA 
        ON OKCONO = OBCONO
        AND OKCUNO = OBCUNO
    LEFT JOIN MVXJDTA.MITMAS
        ON MMCONO = OBCONO
        AND MMITNO = OBITNO
    LEFT JOIN MVXJDTA.MITFAC
        ON M9CONO = OBCONO
        AND M9FACI = OBFACI
        AND M9ITNO = OBITNO
    LEFT JOIN MVXJDTA.CVATPC
        ON CVCONO = OBCONO
        AND CVDIVI = OBDIVI
        AND CVVTCD = OBVTCD
WHERE OBCONO = '610'
        AND OBORNO = '2000000190'
                
GROUP BY OBCUNO,OKCUNM,OBORNO,OBCUOR,OBPROJ,OBITNO,OBHDPR,MMITDS,MMFUDS,OBSAPR,M9UCOS,OBUCOS,OBVTCD,OBORQA,CVVTP1,O7CRFA,O7CRAM, O7CRID,OBPONR
EN

回答 1

Stack Overflow用户

发布于 2021-12-17 08:26:29

CASE语句正在生成多个值,因此您将在结果中得到多个行。例如,pnp_chg的值为0和168.4。

可能您需要在每个案例语句中加上SUM --假设这就是您想要处理这种情况的方式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70387101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档