数据集怎样设置取近7天的数据,当结束时间为空时,取所有数据,我的sql里应该怎么写

并且根据我时间控件的选择,动态查询近7天数据

image.png

image.png

FineReport 帆软用户BbxALCAmxL 发布于 2025-5-10 11:28 (编辑于 6 天前
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
CD20160914Lv8专家互助
发布于6 天前

这样就行了,你的有太多错误

select 

DATE(aa.createtime) AS createTime,

count(*) as 个数

from sys_qrcode_t aa

left join sys_dy bb

on aa.person=bb.username

where 1=1

${if(len(结束时间)=0,"","and aa.createtime >='"+DATEDELTA(结束时间,-7)+"'")}

${if(len(结束时间)=0,"","and aa.createtime <'"+DATEDELTA(结束时间,1)+"'")}

group by DATE(aa.createtime)

image.png

最佳回答
0
苏菲的供词Lv6中级互助
发布于2025-5-10 14:48(编辑于 2025-5-10 16:44)

类似:

${if(len(结束时间)=0,""," and aa.createtime +7 >=now()")}

${if(len(结束时间)=0,""," and aa.createtime <=now()")}

我的时间字段是date的

你的截图里的sql有个多余的“-”

image.png

  • 帆软用户BbxALCAmxL 帆软用户BbxALCAmxL(提问者) 会报错
    2025-05-10 15:10 
  • 帆软用户BbxALCAmxL 帆软用户BbxALCAmxL(提问者) 第二张图的错误
    2025-05-10 15:10 
  • 苏菲的供词 苏菲的供词 回复 帆软用户BbxALCAmxL(提问者) 一个条件一个条件的加,看看是哪个条件有问题,然后看你的数据库的日期加减是什么样的,和我的不一定一样
    2025-05-10 15:56 
  • 苏菲的供词 苏菲的供词 回复 帆软用户BbxALCAmxL(提问者) 能不能把sql放出来看看,我见near: '' and ...
    这个''是哪里来的
    2025-05-10 16:09 
  • 帆软用户BbxALCAmxL 帆软用户BbxALCAmxL(提问者) 回复 苏菲的供词 select DATE(aa.createtime) AS createTime,count(*)
    from sys_qrcode_t aa
    left join sys_dy bb
    on aa.person=bb.username
    where 1=1 --and createtime>=(CURDATE()-6)
    ${if(len(结束时间)=0,"","' and aa.createtime+7 >=now()")}
    ${if(len(结束时间)=0,"","' and aa.createtime <=now()")}
    group by DATE(aa.createtime)

    麻烦看下,是mysql的
    2025-05-10 16:40 
  • 4关注人数
  • 73浏览人数
  • 最后回答于:6 天前
    请选择关闭问题的原因
    确定 取消
    返回顶部