日期查询问题

数据库中的数据按照“年-月-日“格式存储,但是我添加日期参数,想查出一个月的所有数据,怎么实现

image.png

FineReport yzm169089 发布于 2021-12-15 13:44 (编辑于 2021-12-15 13:58)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共6回答
最佳回答
0
LSQ000Lv5中级互助
发布于2021-12-15 13:47

substr(日期字段,1,7) = '${年-月参数}'

  • yzm169089 yzm169089(提问者) 报错了,我完善到问题上边了
    2021-12-15 13:58 
  • LSQ000 LSQ000 回复 yzm169089(提问者) 删掉“ddate=”直接 substr(ddate,1,7) = \'${rq}\'
    2021-12-15 14:15 
最佳回答
0
MorsLv5见习互助
发布于2021-12-15 13:45

数据库中的数据按照“年-月“加一列格式存储就可以啦。。

最佳回答
0
亲爱的记得采纳Lv6高级互助
发布于2021-12-15 13:57

不建议加额外数据列,数据表会占用更多内存

如果按你题目所说是添加了一个日期参数

如果没有其他地方需要使用该日期参数,建议改成月份参数 只要将日期控件格式改成yyyy-MM即可

前端自动去掉日期选择只有年月选择

image.pngimage.png

数据表中是年-月-日

所以需要截取获得年-月字符串和参数进行对比即可

参考如下:

where

    1=1

    and substr(日期,1,7) = ${'参数'}

最佳回答
0
快乐星光Lv5中级互助
发布于2021-12-15 13:59(编辑于 2021-12-15 14:03)

你的日期字段是什么类型:

如果是日期类型,直接:where  month(日期字段)=right( '${参数}' ,2) and year(日期字段)=left( '${参数}' ,4)

如果是字符串,直接:  where   SUBSTRING('2021-09-01',1,7)= '${参数}'   

以上是sql数据库

最佳回答
0
snrtuemcLv8专家互助
发布于2021-12-15 13:59

image.png

最佳回答
0
CD20160914Lv8专家互助
发布于2021-12-15 14:00

where substr(ddate,1,7)='${rq}'

改成这样

  • 7关注人数
  • 282浏览人数
  • 最后回答于:2021-12-15 14:03
    请选择关闭问题的原因
    确定 取消
    返回顶部