0

我在 SSRS 中运行一个查询,它将日期选择器日期格式默认为 DD/MM/YYYY。然而,实际数据库中的日期是 YYYY-MM-DD 格式。我尝试将这些日期转换如下,但我收到消息“将 varchar 数据类型转换为 datetime 数据类型导致值超出范围”。

Col1 BETWEEN convert(varchar, '22/10/2013 00:00:00', 120) AND convert(varchar, '22/10/2013 23:59:59', 120)

我在弄清楚为什么会触发该错误时遇到了一些麻烦。IE。22/10/2013 是一种有效的日期格式,所以我想它应该足够容易地转换为 2013-10-2013 吗?

但我想我错过了一些东西!

4

1 回答 1

2

DateTime值没有格式 - 您在显示它们时应用格式。您应该能够将参数设置为一种DateTime类型,然后将其传递到查询中,而无需进行任何字符串转换。

于 2013-10-23T19:43:08.303 回答