在 Teradata 中将 Varchar(200) 转换为 YYYY-MM-DD 格式 SQL
Converting Varchar(200) to YYYY-MM-DD format in Teradata SQL
我有一个像这样的 Varchar:
23FEB2025
我正在尝试将其转换成如下格式:
1994-02-23 or YYYY-MM-DD
我试过select cast ('23FEB2025' as date format 'yyyy-mm-dd');
和sel convert(date,'23FEB2025')
该列中还有其他格式如 12DEC65
的日期。
我现在开始假设没有简单的方法来转换它,所以我需要一些指导。我是否需要获取日期的子字符串并使用一堆 select case 语句?
我本来希望找到一种捷径来做到这一点,但似乎没有。我在这里读到,将日期存储为字符串是个坏主意,我现在完全同意这个想法。
感谢您的任何帮助或建议!
投射日期的格式部分是输入格式。输出格式基于您的语言环境和日期设置。在你的情况下,你想要这个:
select
cast ('23FEB2025' as date format 'ddMMMYYYY')
哪个 return 2025-02-23.
我有一个像这样的 Varchar:
23FEB2025
我正在尝试将其转换成如下格式:
1994-02-23 or YYYY-MM-DD
我试过select cast ('23FEB2025' as date format 'yyyy-mm-dd');
和sel convert(date,'23FEB2025')
该列中还有其他格式如 12DEC65
的日期。
我现在开始假设没有简单的方法来转换它,所以我需要一些指导。我是否需要获取日期的子字符串并使用一堆 select case 语句?
我本来希望找到一种捷径来做到这一点,但似乎没有。我在这里读到,将日期存储为字符串是个坏主意,我现在完全同意这个想法。 感谢您的任何帮助或建议!
投射日期的格式部分是输入格式。输出格式基于您的语言环境和日期设置。在你的情况下,你想要这个:
select
cast ('23FEB2025' as date format 'ddMMMYYYY')
哪个 return 2025-02-23.