tsql - 从字符串转换日期时转换失败
问题描述
我正在尝试在 SELECT 语句中将 YYYMMDD 的发票日期字段重新排列为短日期格式 DD/MM/YYYY 或 DD-MM-YYYY UK/British 格式。
在 MSSQL 服务器 2008 R2 上执行
SQL
CONVERT(date,CAST(columnvalue AS VARCHAR),103)
生产 YYYY-MM-DD
CAST(right(convert(varchar,columnvalue),2)+substring(convert(VARCHAR,columnvalue ),5,2) + left(convert(VARCHAR,columnvalue ),4)AS VARCHAR)
生产 DDMMYYY
CONVERT(date,CAST(right(convert(varchar,columnvalue),2)+substring(convert(VARCHAR,columnvalue),5,2) + left(convert(VARCHAR,columnvalue),4)AS VARCHAR),103)
错误
“从字符串转换日期和/或时间时转换失败”
我究竟做错了什么?
解决方案
以下内容会有所帮助:
SELECT CONVERT(VARCHAR(10), GETDATE(), 103) AS [DD/MM/YYYY]
SELECT CONVERT(VARCHAR(10), GETDATE(), 105) AS [DD-MM-YYYY]
推荐阅读
- javascript - 为什么在这个 vega-lite 图中编码是这样拆分的?
- if-statement - if-else-if 梯形图分支的通用代码
- html - 在heroku中刷新页面时无法获取/登录?
- javascript - MS 脚本控件中的 JavaScript 数组操作
- gcc - 为什么 MIPS GCC 在函数调用(一个 GOT 指针)之后从 16($fp) 重新加载 28 美元,而没有先存储到 16($fp) ?
- c++ - 遍历链表时出现 C++ 分段错误
- r - 将列设置为行名,以获取 r 中数据帧子列表的列表
- java - Java:访问要渲染的 BufferedImage 仅在类内部产生影响
- python - 如何根据字典列字段列表中的键值对过滤 DataFrame 行?
- javascript - 无法将下拉值传递给 XSLT 参数