0

我正在使用 SQL Report Builder 编写报告。我必须使用以下语句从文本字段 (customer_order_line_hist, field=message_text) 导出两个与日期相关的字段。

原始message_text字段除了日期信息外始终相同:“计划交货日期已从2013-06-28 00.00.00更改为2013-05-16 00.00.00”</p>

我正在尝试将两个输出字段(FROM_DATE 和 TO_DATE)转换为日期时间字段或格式 mm/dd/yyyy。

我尝试了 CONVERT 和 CAST 功能但没有成功。有任何想法吗?


Select  SUBSTR(t.message_text, 49, 10) AS FROM_DATE,
        SUBSTR(t.message_text, 72, 10) AS TO_DATE,
        t.order_no,
        t.line_no,
        t.rel_no,
        t.line_item_no,
        t.history_no
FROM    customer_order_line_hist t
Where   t.message_text Like 'The planned delivery date%'
4

1 回答 1

0

如果您的语法正确,转换应该可以工作。试试这个简化的测试:

 declare @sText varchar(max)

 select @sText = 'The planned delivery date has been changed from 2013-06-28 00.00.00 to       2013-05-16 00.00.00'


 select  convert(datetime, SUBSTRING(@sText, 49, 10)) AS FROM_DATE,
    convert(datetime, SUBSTRING(@sText, 72, 10)) AS TO_DATE
于 2013-08-19T15:41:36.743 回答