Sql 如何绕过错误消息241(从字符串转换日期和/或时间时转换失败)

Sql 如何绕过错误消息241(从字符串转换日期和/或时间时转换失败),sql,oracle,Sql,Oracle,我只是想按采集日期列排序,该列的日期采用这种格式:'04/02/2019'等。。。我已经在一个新表中创建了一个名为ACQ\u DATE\u CONVERTED的列,我通常会得到如下结果:2019-04-02。相反,我得到的是 错误消息241(从字符串转换日期和/或时间时转换失败) 我尝试了以下方法: SELECT [ITEM], [ACQ_DATE], CONVERT(DATE,[ACQ_DATE]) AS ACQ_DATE_CONVERTED ,' ' AS MFG INTO [ABC

我只是想按采集日期列排序,该列的日期采用这种格式:
'04/02/2019'
等。。。我已经在一个新表中创建了一个名为
ACQ\u DATE\u CONVERTED
的列,我通常会得到如下结果:
2019-04-02
。相反,我得到的是

错误消息241(从字符串转换日期和/或时间时转换失败)

我尝试了以下方法:

SELECT [ITEM], [ACQ_DATE],

CONVERT(DATE,[ACQ_DATE]) AS ACQ_DATE_CONVERTED
,'    ' AS MFG
INTO [ABC].[dbo].[My_Store_records_CONVERTED]
FROM [ABC].[dbo].[My_Store_records]
结果出来后,我按
ACQ\u日期\u转换的方式下单

SELECT [ITEM], [ACQ_DATE]
FROM [ABC].[dbo].[My_Store_records_CONVERTED]
ORDER by [ACQ_DATE_CONVERTED]
我的预期结果应如下表所示:

       Column_A    Column_B       ColumnC
Rows   ITEM        ACQ_DATE       ACQ_DATE_CONVERTED
1.     ITEM_1      04/09/2007     2007-04-09
2.     Store item  01/26/2008     2008-01-26
etc...

请尝试以下查询:

REPLACE(CONVERT(VARCHAR(10), [ACQ_DATE], 111), '/', '-') AS ACQ_DATE_CONVERTED
由于您正在从
ACQ\u日期转换
,因此您可以使用
ORDER BY[ACQ\u日期]
,它将起作用


请尝试以下查询:

REPLACE(CONVERT(VARCHAR(10), [ACQ_DATE], 111), '/', '-') AS ACQ_DATE_CONVERTED
由于您正在从
ACQ\u日期转换
,因此您可以使用
ORDER BY[ACQ\u日期]
,它将起作用


感谢为本期提供帮助的所有人

我发现我想要订购的列的所有单元格中都有一个隐藏字符;因此,导致每条线路都出现故障。然而,有了下面这些,我才克服了这个绊脚石。我希望任何有这个问题的人都会发现我下面的解决方案很有帮助

删除隐藏字符。

, REPLACE([ACQ_DATE], CHAR(10),'') AS [ACQ_DATE_CONVERTED]
,'    ' AS MFG
INTO [ABC].[dbo].[My_Store_records_CONVERTED]
FROM [ABC].[dbo].[My_Store_records]
根据ACQ_日期_对新表进行排序

ALTER TABLE [ABC].[dbo].[My_Store_records_CONVERTED] ALTER COLUMN [ACQ_DATE_CONVERTED] DATE NULL;
然后当然

ORDER by [ACQ_DATE_CONVERTED]
致以最良好的祝愿,
Dex

感谢为本期提供帮助的所有人

我发现我想要订购的列的所有单元格中都有一个隐藏字符;因此,导致每条线路都出现故障。然而,有了下面这些,我才克服了这个绊脚石。我希望任何有这个问题的人都会发现我下面的解决方案很有帮助

删除隐藏字符。

, REPLACE([ACQ_DATE], CHAR(10),'') AS [ACQ_DATE_CONVERTED]
,'    ' AS MFG
INTO [ABC].[dbo].[My_Store_records_CONVERTED]
FROM [ABC].[dbo].[My_Store_records]
根据ACQ_日期_对新表进行排序

ALTER TABLE [ABC].[dbo].[My_Store_records_CONVERTED] ALTER COLUMN [ACQ_DATE_CONVERTED] DATE NULL;
然后当然

ORDER by [ACQ_DATE_CONVERTED]
致以最良好的祝愿,
Dex

请用您的RDBMS标记问题,您知道哪一行失败了吗?嗨,Joakim,下面是确切的消息:Msg 241,16级,状态1,第2行从字符串转换日期和/或时间失败。我是指数据库中的哪一行。对不起,所有行都失败了。另外,你能告诉我什么是RDBMS吗?这样我就可以在我的问题中添加标签了。(对不起,我是新手。)你在用什么数据库?这就是我要问的。请用您的RDBMS标记问题,您知道哪一行失败了吗?嗨,Joakim,下面是确切的消息:Msg 241,16级,状态1,第2行从字符串转换日期和/或时间失败。我是指数据库中的哪一行。对不起,所有行都失败了。另外,你能告诉我什么是RDBMS吗?这样我就可以在我的问题中添加标签了。(对不起,我是新手。)你在用什么数据库?这就是我要问的,几乎解决了我的问题;我需要按[ACQ_DATE_CONVERTED]从最早到最近的顺序订购。@Dexter请用相同的演示找到更新的答案。几乎解决了我的问题;我需要按[ACQ_DATE_CONVERTED]从最旧到最新的顺序订购。@Dexter请用相同的演示找到更新的答案。