首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用间隔的查询问题

使用间隔的查询问题
EN

Stack Overflow用户
提问于 2014-01-17 16:52:51
回答 1查看 172关注 0票数 1

我使用的是iReport 5.1、JasperReports Server 5.1,而且使用INTERVAL的查询也有问题。我遇到问题的查询行是:

AND I.created::DATE >= I.created::DATE - INTERVAL '$P{attribution_window_passed} days'

我将属性窗口值从主报表作为参数传递给子报表。我验证了通过在子报表中使用文本字段传递的参数值是否正确工作。如果将$P{attribution_window_passed}排除并替换为整数,则查询运行良好,例如:

AND I.created::DATE >= I.created::DATE - INTERVAL '30 days'

我相信问题在于逃避单引号,我没有运气地尝试过:

  • '$P{attribution_window_passed} days'
  • \' $P{attribution_window_passed} days'
  • $P{attribution_window_passed} days
  • $P{attribution_window_passed} ' days'
  • \'$P{attribution_window_passed} days\'
  • \\' $P{attribution_window_passed} days'

我还尝试将$P{attribution_window_passed}更改为字符串类,而不是整数类。

如有任何关于在查询中使用INTERVAL的建议,将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2014-01-20 21:24:20

我在用PostgreSQL。我在主报表和子报表中都将参数'attribution_window_passed‘从Integer改为String。然后将主报表中的查询选择语句更改为

  • PC.attribution_window =‘days’作为attribution_window

作为参数传递给子报表。子报表中的查询现在看起来像

  • 和PC.conversion_date - I.created <= $P{attribution_window_passed}::INTERVAL
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21191435

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档