将NVARCHAR转换为DATE格式DD/MM/YYYY

2020-08-27 17:53发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)当尝试将字段从NVARCHAR转...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


当尝试将字段从NVARCHAR转换为DATE时,出现以下错误:

在30 ms 188 µs中无法从" @ A11_HISTO_VTA"执行'SELECT TO_CHAR(TO_DATE(" FECHA",'MM/DD/YYYY'),'MM/DD/YYYY')'。 [314]:数字溢出:搜索表错误:[6944] AttributeEngine:数字计算溢出;字符串格式(daydate [here] daydate(字符串" FECHA",字符串'MM/DD/YYYY'),字符串'MM/DD/YYYY'),FECHA = '24/11/2017'[string]; checkNull false


使用以下SQL命令执行操作:

-从" @ A11_HISTO_VTA"中选择TO_CHAR(TO_DATE(" FECHA",'MM/DD/YYYY'),'MM/DD/YYYY')
 -从" @ A11_HISTO_VTA"中选择TO_DATE(" FECHA"," MM/DD/YYYY")
 -从" @ A11_HISTO_VTA"中选择TO_VARCHAR(TO_DATE(FECHA,'YYYYMMDD'),'YYYY-MM-DD')

 
4条回答
渐行渐远_HoldOn
2020-08-27 18:09 .采纳回答

根据您的评论,对我的要求是这样的:

从具有DAY,MONTH和YEAR的三个单独字符串列的表中创建一个SQL-date列。

对于DAY和MONTH,这些列可以包含一位和两位数的值。

由于TO_DATE()函数需要两位数的值进行转换(格式掩码DD和MM),因此这些值需要

幸运的是,SQL附带了LPAD()函数。

总而言之,可以像这样实现要求 :

,数据为(选择
                         一天为" 1"
                      ," 03"作为月份
                      ," 2017"作为年份
                 从假人
                 全部合并
                 选择
                        当日为" 12"
                      ," 1"作为月份
                      ," 2018"作为年份
                 来自假人),
 data_form as(选择
 lpad(day,2,'0')as day,
 lpad(month,2,'0')作为月份,
 年
               从数据)
 选择
     *
    ,to_date(day || month || year,'DDMMYYYY')as SQLDATE
 从
      data_form
 

一周热门 更多>