树状图结构怎么做报表?

如下图,“种类”列和“产品名”列共用一个字段“Product_name”,区分的依据是判断上级字段"Parent_product_code"是否为空,为空则为“种类”,做报表怎么做成下面格式?


FineReport qikun1 发布于 2019-4-2 14:32
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
KevinGaoLv2初级互助
发布于2019-4-2 15:10(编辑于 2019-4-2 15:43)

SELECT A.PRODUCT_NAME TY,B.PRODUCT_NAME PD,B.PRICE FROM TB A,TB B WHERE A.PARENT_PRODUCT_CODE IS NULL AND B.PARENT_PRODUCT_CODE IS NOT NULL AND B.PARENT_PRODUCT_CODE = A.PRODUCT_CODE


这样查出来作为数据集再做报表就可以啦


dcf3fff46a9168bea615c786fa673f8.png


SELECT A.PRODUCT_CODE,A.PRODUCT_NAME,B.PRODUCT_CODE,B.PRODUCT_NAME FROM CUX.CUX_TEST A,CUX.CUX_TEST B WHERE A.PARENT_PRODUCT_CODE IS NULL AND B.PARENT_PRODUCT_CODE IS NOT NULL AND B.PARENT_PRODUCT_CODE = A.PRODUCT_CODE



  • qikun1 qikun1(提问者) 不是这个意思。表一是要生成的表格。表二是数据集。怎么样通过表二生成表一。
    2019-04-02 15:28 
  • KevinGao KevinGao 回复 qikun1(提问者) 你用的是Oracle的数据库么?要不直接用树查询查询出来,然后展示出来,你说的是图一是需要做成的报表,图二是数据表是吧?就按照我上面写的SQL的方式看看能不能查出来。能查出来直接分组汇总就可以了
    2019-04-02 15:31 
  • qikun1 qikun1(提问者) 回复 KevinGao 用的是Mysql。按照上面的SQL也查不出来
    2019-04-02 15:33 
  • KevinGao KevinGao 回复 qikun1(提问者) 为什么不出来呢?你看我新补上去的图
    2019-04-02 15:44 
  • liyunfeng liyunfeng 试了下,这个只适合两个层级。如果是4个层级或更多该如何操作呢?
    2019-04-17 08:49 
最佳回答
0
吴浩Lv6中级互助
发布于2019-4-2 15:42

selelct  a.product_name ,b.product_name_son,单价 from  table1 a

left join (selelct  product_name as product_name_son ,单价(字段也不给)from  table1  where parent_product_code is null) b on a.product_code = b.product_code

where parent_product_code is not null 

试试看

  • 3关注人数
  • 510浏览人数
  • 最后回答于:2019-4-2 15:43
    请选择关闭问题的原因
    确定 取消
    返回顶部