SQL Server : convert string with format dddd mm/dd/yy to date

标签 sql sql-server t-sql format sql-server-2012

如何将格式为 dddd mm/dd/yy 的字符串转换为 SQL Server 中的日期?

例如2013 年 1 月 9 日星期三

最佳答案

一旦消除了星期几,您就可以转换其余的值。

以下作品:

select cast(right(col, len(col) - charindex(' ', col)) as date)
from (select 'Wednesday 1/9/13' as col) t;

编辑:

亚伦说得很好。您可以使用样式为“1”的 convert 来确保转换:

select convert(date, right(col, len(col) - charindex(' ', col)) , 1)
from (select 'Wednesday 1/9/13' as col) t;

(101 不起作用,因为它需要 4 位数的年份。)

关于SQL Server : convert string with format dddd mm/dd/yy to date,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18116346/

相关文章:

sql-server - 如何在sql中将时间跨度转换为年、月和日

sql-server - Azure SQL - 使用弹性数据库查询从另一个数据库查询现有表

sql - 甲骨文 SQL : How to show empty weeks/weeks without data?

sql-server - 将本地数据库更改发布到远程数据库 SQL Server 2012

sql-server - SQL Server 存储过程需要未提供的参数

c# - 为什么存储过程比查询快

mysql - 当值更改时选择 sql 行

c# - CS0246 找不到类型或命名空间名称 'ErrorViewModel'(是否缺少 using 指令或程序集引用?)

c# - 如何从List生成SQL语句?

sql - 选择分层数据而不使用 CTE