单元格时间相减取数据库字段值

数据库表名ddb,字段cd,数据库中有一条数据date=2023-07-01 ,cd=3345,我在ctp报表中A1输入2023-08-01时,B1自动显示2023-07-01日期中cd的值。

A3是自己选择的时间,d3是我要的数据。

111.jpg

FineReport 贵州新干线 发布于 2023-8-24 19:51 (编辑于 2023-8-24 20:08)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-8-24 21:46(编辑于 2023-8-24 21:50)

=sql("数据连接名称","select cd from 表名称 where 年月字段='"+FORMAT(MONTHDELTA(CONCATENATE(A3,"-01"),-1),"yyyy-MM")+"'",1,1)

FORMAT(MONTHDELTA(CONCATENATE(A3,"-01"),-1),"yyyy-MM")

image.png

image.png

最佳回答
0
mind_childLv6见习互助
发布于2023-8-24 20:05(编辑于 2023-8-24 20:05)

这个你得用填报,然后在A1单元格设置一个时间控件。

然后B1单元格里面可以写sql:  =sql("connection","select cd from ddb where data='"+a1+"'",1,1)

这样就实时变了

  • 贵州新干线 贵州新干线(提问者) data=\'\"+a1+\"\'\",1,1请问这是什么意思
    2023-08-24 20:08 
  • mind_child mind_child 回复 贵州新干线(提问者) 在代码里反斜线的意思是禁止转义,比如说当你使用单引号的时候,但是里面的值是带单引号的,这样和外面的单引号冲突了。这个时候需要对里面的单引号进行转义,用反斜线就可以了。 就像这样 v=\"ab\"666\"c\" 这样是错的,里面多了双引号需要写成 v=\"ab/\"666/\"c\" 如果无法理解的话,建议你可以学学代码,这些是比较基础的问题哦
    2023-08-24 20:16 
  • 贵州新干线 贵州新干线(提问者) 不显示啊,我把\"connection\"改为了我的数据名
    2023-08-24 20:17 
  • 贵州新干线 贵州新干线(提问者) 感谢你的回答
    2023-08-24 21:53 
  • 3关注人数
  • 492浏览人数
  • 最后回答于:2023-8-24 21:50
    请选择关闭问题的原因
    确定 取消
    返回顶部