Reporting Services - 连接字符串和参数

时间:2013-07-03 07:26:47

标签: postgresql service parameters reporting concatenation

这里的查询是什么?

我想把“年”作为参数:

select distinct
p.id "pub_id"
from 
publication "p", organisation_association "oa", organisation "o", localized_string_text "lst_org"
where
p.id = oa.publication_id
and oa.organisation_id = o.id
and o.name_id = lst_org.localized_string_id
and p.submission_year = ?
and exists (select 1
        from
        publication "p2", organisation_association "oa2", organisation "o2"
        where
        p2.id = p.id
        and p2.id = oa2.publication_id
        and oa2.organisation_id = o2.id
        and o2.period_end_date < date ? + '-01-01')

但是,最后一行的连接会产生语法错误。

1 个答案:

答案 0 :(得分:3)

如果参数作为年份字符串传递:

and o2.period_end_date < date (? || '-01-01'))

如果是日期:

and o2.period_end_date < date_trunc('year', ?)

如果是年份数字:

and o2.period_end_date < date (?::text || '-01-01'))