点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我已经使用带有SQL命中SQL Server的命令创建了CR。 还创建了开始日期和结束日期参数/提示。
所以我的命令基本上是这样的...
声明@BeginDate AS VARCHAR(100) 设置@BeginDate ='{?BeginDate}' 声明@EndDate AS VARCHAR(100) 设置@EndDate ='{?EndDate}' -对@BeginDate和@EndDate进行了一些操作 最终@FinalBeginDate和@FinalEndDAte通过...设置为日期值 设置@FinalBeginDate = CAST(@BeginDate作为DATE) 设置@FinalEndDate = CAST(@EndDate作为DATE)
然后运行SELECT,返回许多字段,其中包括PERIOD,这是VARCHAR(6)定义的字段,其中包含格式为YYYYMM的年和月值。
我希望我的WHERE子句具有这样的内容...
SELECT ...在哪里CAST(句点+'10'作为日期)> = @FinalBeginDate和CAST(PERIOD +'10'作为日期)<= @FinalEndDate
我始终收到此错误...
无法从数据库检索数据。
详细信息22007:[Microsoft] [SQL Server Native Client 11.0] [SQL Server]从字符字符串转换日期和/或时间时,转换失败。 [数据库供应商代码:241]
注意:如果我不考虑WHERE条件,则尝试创建并显示@FinalBeginDate和@FinalEndDate,输出为12/1/2019和12/31/2019。 如果我显示PERIOD,则为201912。
我已经尝试了此行的大量变化:
CAST(PERIOD +'10'AS DATE)> = @FinalBeginDate和CAST(PERIOD +'10'AS DATE)<= @FinalEndDate
在PERIOD,@ FinalBeginDate和@FinalEndDate上使用CONVERT,CAST等,但是我无法解决该错误。
有人有建议吗?
谢谢
迈克尔,你好
在PERIOD为空的地方有吗? 如果是这样,那可能是导致您出错的原因,您必须解决这个问题。
此外,我可能会从另一个角度来看待这个问题。 与其尝试将PERIOD转换为日期,不如将最终的开始日期和结束日期重新格式化为YYYYMM格式的字符串。 看起来像这样:
-Dell
一周热门 更多>