怎么让字段判断时间区间,正确筛选区间数据

图一是设置公式, 图二是运行结果, 图三是报错结果

单选按钮控件是选择时间维度(年月日), 主报表参数设置查询月公式, 判断日期部分应该怎么写才能准确? 

就是当时间维度是"日"的时候, 字段date要在控件"开始日期"和"结束日期"之间筛选正确的数据

1.png微信截图_20210924103800.png

9.png

FineReport 停电1小时 发布于 2021-9-24 10:36 (编辑于 2021-9-24 11:05)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
停电1小时Lv4初级互助
发布于2021-9-24 11:41

1)修改主报表的网络报表查询月公式: if(type='month',if(D3=$,D3,$),if(type='year',"",$开始日期)) ,增加条件:如果时间维度是”, 返回所有数据, ”,返回开始日期;

2)增加主报表的网络报表参数截止日期”;

3)修改子报表查询参数公式: ${if(len(查询月)==0,"",if(len(查询月)<=2,

" AND month(date) IN ('"+查询月+"')"," AND date between ('"+查询月+"') and ('"+截止日期+"')"))}

2.png

最佳回答
0
Z4u3z1Lv6专家互助
发布于2021-9-24 10:41(编辑于 2021-9-24 10:53)

date>='2021-01-01' and date<='2021-09-24'

date between '2021-01-01' and '2021-09-24'

另外IN的语法是 in ('2021-01-01','2021-09-24')表示查询这两天的值,注意每个条件用单引号括起,用逗号分割

最佳回答
0
LSQ000Lv5中级互助
发布于2021-9-24 10:59

image.png

  • 停电1小时 停电1小时(提问者) 不行, 是我子报表公式有问题吗?(已上传子报表公式) 能帮我看看?
    2021-09-24 11:04 
  • LSQ000 LSQ000 回复 停电1小时(提问者) 你这是什么数据库,date是什么类型字段,date的值是什么样的
    2021-09-24 11:19 
  • 停电1小时 停电1小时(提问者) 回复 LSQ000 已经解决 谢谢你
    2021-09-24 11:38 
  • 1关注人数
  • 540浏览人数
  • 最后回答于:2021-9-24 11:41
    请选择关闭问题的原因
    确定 取消
    返回顶部