A、B、C、D四张表关联,A和C表+了日期条件后,整个语句就查询不到任何结果了。

是不是语句有问题呢? 按理说left join是以A表为准吧?  目前A表和C表的日期确实是没有相等的. 但我希望用户在查询时,如果A表字段有值就显示, C表字段没值就显示为空。  而不是因为A和C表关联时因为日期条件,4张表的字段都不显示值。

语句:

SELECT SUM(ZIFXAV012),SUM(ZIFXAV015),SUM(ZIFXAC016),

SUM(QMKC)AS QMKC,SUM(AMOUNT)AS AMOUNT,ZICZS0006,EMPLGROUP,

BALANCE,ZPROFIT,CALMONTH,GL_ACCOUNT FROM 

(

SELECT A.ZIFXAV012,A.ZIFXAV015,A.ZICZS0006,BALANCE,A.ZPROFIT,A.CALMONTH,A.ZIFXAC016,

B.GL_ACCOUNT,D.QMKC,C.AMOUNT,C.EMPLGROUP

FROM  "_SYS_BIC"."CB.AL.YW/ZAL_SALES_DETAIL"  A

LEFT JOIN "_SYS_BIC"."CB.BL.YW/ZBL_ZDEFI002"  B

ON A.ZPROFIT = B.ZPROFIT  AND A.CALMONTH = B.CALMONTH

LEFT JOIN "_SYS_BIC"."CB.BL.YW/ZBL_ZDEYG006" C

ON  SUBSTR(B.ZPROFIT,2,20)=SUBSTR(C.MAST_CCTR ,2,20)

AND A.CALMONTH = C.CALMONTH

LEFT JOIN 

(SELECT ZICZS0000,CALMONTH,SUM(DMBTR_TO) AS QMKC       FROM (

SELECT CALMONTH,ZICZS0000,DMBTR_TO  -- 期末金额

FROM "_SYS_BIC"."CB.AL.YW/ZAL_STOCK_BQPRICE"

(PLACEHOLDER."$$ZIP_STDATE$$"=> '20220701',             -- 时段开始日期

 PLACEHOLDER."$$ZIP_ENDDATE$$"=>'20220731')             -- 时段结束日期

WHERE ZICZA0001 NOT IN ('Z005','Z006','Z008','Z010') -- 排除虚拟商品等

  AND ZICZA0003 NOT IN ('1110')         -- 排除以旧换新旧饰

  AND ZICZA0004 IN ('D01','D02','D03','D04','D05','D06','D07','D08','D09')

) GROUP BY ZICZS0000,CALMONTH) D

ON CONCAT('P',D.ZICZS0000)=A.ZPROFIT

WHERE FISCPER NOT LIKE '%000'

AND B.ZPROFIT NOT LIKE 'P7%'

AND C.WAGETYPE='/559'

AND A.CALMONTH>= '202207'

AND A.CALMONTH<= '202207'

ORDER BY A.ZIFXAV012,A.ZIFXAV015,ZICZS0006,BALANCE,A.ZPROFIT,A.CALMONTH,

A.ZIFXAC016,B.GL_ACCOUNT,D.QMKC,C.AMOUNT,C.EMPLGROUP)

GROUP BY ZPROFIT,CALMONTH,ZIFXAV012,

ZIFXAV015,ZIFXAC016,ZICZS0006,BALANCE,GL_ACCOUNT,QMKC,AMOUNT,EMPLGROUP

------------------------------------------------------------------------------

截图:

image.png

FineReport rbk333 发布于 2022-8-2 09:47
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
yzm339714Lv6中级互助
发布于2022-8-2 09:55

image.png

因为这个原因,你也说了目前A表和C表的日期确实是没有相等的 ,说以匹配出来C表的所有字段都是空,然后就没有 = 559 的了,自然整体结果就是空了

最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-8-2 09:49

你确定这两个字段格式是一样的?

  • 2关注人数
  • 271浏览人数
  • 最后回答于:2022-8-2 09:55
    请选择关闭问题的原因
    确定 取消
    返回顶部