1

我在 Oracle 中有一个查询(部分)如下所示:

where Doc3.clinicalDate >= ml.convert_date_to_id(:DateBegin)
    and Doc3.clinicalDate < ml.convert_date_to_id(:DateEnd)

当我将此查询放入 SSRS 并设置报表和数据集参数时,它工作正常。但是,如果我将它粘贴到 Oracle SQL Developer 中,它会弹出一个窗口,要求我“输入绑定”。当我输入“日期'2011-06-01'”时,我收到错误“ORA-01858:在需要数字的地方发现了一个非数字字符”。如何以它实际理解的格式传递日期?谢谢。

4

2 回答 2

5

这将取决于您的数据库的默认日期格式。尝试 06-01-2011, 01-Jun-2011, 2011-06-01 (注意:所有都没有周围的撇号,这会使它们成为字符串)。

于 2012-05-30T10:56:13.203 回答
3

这是一个常见的问题。我将查询更改为使用to_date(:DateEnd,'DD/MM/YYYY')- 而不是将您的日期作为 varchar 并转换为日期。

于 2012-05-29T20:32:41.493 回答