按季度筛选查询

请问如何实现对数据集中的字段date(数据类型date),通过下拉框实现年 季度查询。

image.png

FineReport yzm175797 发布于 2025-5-20 10:35
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共6回答
最佳回答
0
yzm175797Lv2见习互助
发布于2025-5-20 15:47

谢谢各位评论 我最后还是用笨办法通过在数据库表中添加年份和季度字段实现了

最佳回答
0
用户k6280494Lv6专家互助
发布于2025-5-20 10:36(编辑于 2025-5-20 10:36)
最佳回答
0
华莉星宸Lv7资深互助
发布于2025-5-20 10:36
最佳回答
0
snrtuemcLv8专家互助
发布于2025-5-20 10:42

你数据是日期,你下拉框直接第一季度,第二季度,第三季度,第四季度

实际值是1,2,3,4

然后就是根据年份和季度做过滤出

select  *  from 表 where 1=1

${switch(季度控件,"1"," and 日期字段 >='"+年份控件+"-01-01' and 日期字段 <='"+年份控件+"-03-31'","2"," and 日期字段 >='"+年份控件+"-04-01' and 日期字段 <='"+年份控件+"-06-31'","3"," and 日期字段 >='"+年份控件+"-07-01' and 日期字段 <='"+年份控件+"-09-31'","4"," and 日期字段 >='"+年份控件+"-10-01' and 日期字段 <='"+年份控件+"-12-31'")}

最佳回答
0
yzm665590Lv2见习互助
发布于2025-5-20 11:04

可以把日期字段根据时间case when 成第一季度,第二季度,第三季度、、、然后从过新的字段进行筛选

最佳回答
0
用户wtczn4785625Lv3见习互助
发布于2025-5-20 15:09

企业微信截图_1747724931146.png

给季度哪里添加了一个编辑结束时间,然后自动获取季度的开始时间和结束时间,然后在sql中通过判断动态生成sql

var year =this.options.form.getWidgetByName('年').getValue();

if (this.getValue() == '第一季度') {

var startdate = year +'-01-01';

var endDate = year +'-03-31';

this.options.form.getWidgetByName('起始日期').setValue(startdate)

this.options.form.getWidgetByName('结束日期').setValue(endDate)

} else

if (this.getValue() == '第二季度') {

var startdate = year +'-04-01';

var endDate = year +'-06-30';

this.options.form.getWidgetByName('起始日期').setValue(startdate)

this.options.form.getWidgetByName('结束日期').setValue(endDate)

} else

if (this.getValue() == '第三季度') {

var startdate = year +'-07-01';

var endDate = year +'-09-30';

this.options.form.getWidgetByName('起始日期').setValue(startdate)

this.options.form.getWidgetByName('结束日期').setValue(endDate)

} else

if (this.getValue() == '第四季度') {

var startdate = year +'-10-01';

var endDate = year +'-12-31';

this.options.form.getWidgetByName('起始日期').setValue(startdate)

this.options.form.getWidgetByName('结束日期').setValue(endDate)

}

  • 5关注人数
  • 56浏览人数
  • 最后回答于:2025-5-20 15:47
    请选择关闭问题的原因
    确定 取消
    返回顶部