查询的参数有一个是时间刻度

我想做一个报表,根据参数查询数据并显示,其中一个参数是时间刻度,选择是年,季,月,周,日,选择后查询的时候报表的刻度是对应的选项,如果是年,那么报表的图形横坐标就是今年,只有一个数据,季度就是截止到当前月的季度,月就是一月到当前月,以此类推,要怎么处理啊

FineReport 帆软用户ewz4VgkDjz 发布于 2024-8-14 15:33
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
CovidLv3高级互助
发布于2024-8-14 15:34(编辑于 2024-8-14 15:39)

sql判断

比如 SELECT ${SWITCH("true",类型='年',"year(日期字段)",类型='月',"left(日期字段,7)"....................)} 'new',.............. FROM TABLE WHERE 1=1 ${SWITCH("true",类型='年'," AND year(日期字段)='"+YEAR(TODAY())+"'",类型='月',"日期字段>='"+dateinyear(today(),1)+"' and 日期字段<='"+dateinyear(today(),-1)+"'"....................)} 

  • 帆软用户ewz4VgkDjz 帆软用户ewz4VgkDjz(提问者) 我还有一个参数是本年,本季,本月,本周,本日,昨日这种,会影响么?
    2024-08-14 15:50 
  • Covid Covid 回复 帆软用户ewz4VgkDjz(提问者) 根据你的场景不外乎在SQL里面多一层判断呗
    2024-08-14 15:52 
  • 帆软用户ewz4VgkDjz 帆软用户ewz4VgkDjz(提问者) 回复 Covid 看不太懂写的sql语句
    2024-08-14 16:19 
  • Covid Covid 回复 帆软用户ewz4VgkDjz(提问者) 上面sql翻译一下:1、类型='年'时 SELECT year(日期字段) 'new' from TABLE WHERE 1=1 and year(日期字段)='2024';2、类型='月'时 SELECT left(日期字段,7) 'new' from TABLE WHERE 1=1 and 日期字段>='2024-01-01'and 日期字段<='2024-12-31';3、其它情况没写你自己写
    2024-08-14 16:26 
最佳回答
0
苏菲的供词Lv6中级互助
发布于2024-8-14 15:35(编辑于 2024-8-14 15:43)

${if(测试='月','月字段='+月参数,'')}

${if(测试='年','年字段='+年参数,'')}

以此类推

  • 帆软用户ewz4VgkDjz 帆软用户ewz4VgkDjz(提问者) 我还有一个参数是本年,本季,本月,本周,本日,昨日这种,会影响么?
    2024-08-14 15:50 
  • 苏菲的供词 苏菲的供词 回复 帆软用户ewz4VgkDjz(提问者) 一个字段没办法=本年的同时=去年,不是一个字段的话可以 而且选择年的时候你可以选择本年呀,或者你选择本年的时候给年的控件赋值当前年份,这样在数据集中还是用的年
    2024-08-14 16:33 
  • 2关注人数
  • 125浏览人数
  • 最后回答于:2024-8-14 15:43
    请选择关闭问题的原因
    确定 取消
    返回顶部