隐藏列

SELECT 

MATERIALNAME,

ITEM_NAME,

PRODUCT_LV2_CLASS,

TEST_DESC,

HDL_VALUE,

CASE WHEN RESULT='1' THEN '是' ELSE '否' END RESULT 

 FROM ADS_LIMS_PRODUCT_QUALIFICATION 

 WHERE 1=1

 ${IF(ty='供应商',"","AND ITEM_NAME = '"+ty+"'")}

 AND TO_CHAR(REPORTDATE, 'YYYY') = SUBSTR('${P_S_DATE}',1,4)

ORDER BY 

MATERIALNAME,

TEST_DESC

想根据参数TY是否为供应商来隐藏ITEM_NAME,PRODUCT_LV2_CLASS,这两个字段的展示,但因为SQL里面有这两个字段,那些隐藏着两个字段的展示会出现重复数据

image.png

FineReport 嘘.. 发布于 6 天前
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
华莉星宸Lv7专家互助
发布于6 天前

这样不显示字段

SELECT
 MATERIALNAME, 
 ${if(ty='供应商',"","ITEM_NAME,")}
 ${if(ty='供应商',"","PRODUCT_LV2_CLASS,")}
 TEST_DESC, 
 HDL_VALUE, 
 CASE
   WHEN RESULT = '1' THEN
    '是'
   ELSE
    '否'
 END RESULT
  FROM ADS_LIMS_PRODUCT_QUALIFICATION
 WHERE 1 = 1
 ${IF(ty = '供应商', "", "AND ITEM_NAME = '" + ty + "'")}      
AND TO_CHAR(REPORTDATE, 'YYYY') = SUBSTR('${P_S_DATE}', 1, 4)
 ORDER BY MATERIALNAME,          
          TEST_DESC

最佳回答
0
sysdbaLv5初级互助
发布于6 天前

group by 也放一下过滤字段,比如需要展示的时候group by 7个字段,不需要展示的时候group by 5个字段

  • 3关注人数
  • 29浏览人数
  • 最后回答于:6 天前
    请选择关闭问题的原因
    确定 取消
    返回顶部