You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server中如何将dd/MM/yyyy格式日期字符串转为正确DATE类型

问题原因

你之前的写法逻辑存在错误:CONVERT 函数做同类型(字符串转字符串)转换时,指定的style参数不会生效,你最终相当于直接用会话默认的日期格式解析09/08/2021,而你当前会话默认日期格式为MM/dd/yyyy,因此得到了错误的转换结果。

正确转换方案

SQL Server中103号格式编码刚好对应dd/MM/yyyy的输入格式,直接用CONVERT或TRY_CONVERT指定该编码即可完成正确转换,不需要修改源数据。

方案1:直接转换(确定源数据格式统一无脏数据时使用)

SELECT CONVERT(DATE, '09/08/2021', 103) AS correct_date;

返回结果为2021-08-09

方案2:安全转换(源数据可能存在格式错误时使用,转换失败返回NULL不会报错)

SELECT TRY_CONVERT(DATE, '09/08/2021', 103) AS correct_date;

如果需要批量处理表中的日期字符串字段,替换引号内的常量为你的字段名即可,示例:

SELECT TRY_CONVERT(DATE, 你的日期字符串字段名, 103) AS correct_date FROM 你的表名;

内容的提问来源于stack exchange,提问作者dragonfury2

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 02:36:00