条件属性中设定了时间比较与直接写在SQL中比较的结果不一致

事情的经过是这样的,我的需求是,查出离职日期大于1月1日的人

然后我从人员信息表中,查出人的姓名,离职时间

image.png

然后在单元格的条件属性中设置离职时间>=20210101

image.png

预览后得出的结论是 148人,我觉得数字不对,我就直接在SQL中写

image.png

得出的结论是46,求解原因是什么

FineReport Y1201 发布于 2021-8-12 17:59
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
yalinLv6中级互助
发布于2021-8-12 22:18

根据我的经验,数据库里面的字段类型是【日期】类型过滤条件使用的是【字符串】,所以无法比较,我的做法是不管是什么数据类型都转换为统一的【日期】类型,再进行比较就可以了。如下图所示,试试看。

TODATE(lizhishijian) >= TODATE('20210101')

------------------------------------------------------------------------------

参考文档:TODATE():函数可以将各种日期形式的参数转换为日期类型。

https://help.fanruan.com/finereport/doc-view-819.html?source=4##45

image.png

最佳回答
0
huyajunLv6初级互助
发布于2021-8-12 18:09

我测试可以的,你可以发一下内置数据集

最佳回答
0
用户a8068717Lv4初级互助
发布于2021-8-12 18:13(编辑于 2021-8-12 20:14)

要用公式,date(2021,1,1)

最佳回答
0
烟尘Lv6高级互助
发布于2021-8-12 21:52(编辑于 2021-8-12 21:52)

可能的情况:

1、数据库字段是日期类型,在模版过滤时需要把字符串转成日期格式

2、模版因为扩展或者其他原因,导致数据变多

最好发模版上来

  • 4关注人数
  • 381浏览人数
  • 最后回答于:2021-8-12 22:18
    请选择关闭问题的原因
    确定 取消
    返回顶部