sql-server - 将日期时间格式从 DD-MON-YY HH:mm:ss.mmmmmmmmm AM/PM 转换为 YY-MM-DD HH:mm:ss.mmmmmmm(24 小时格式)
问题描述
将日期时间格式从 DD-MON-YY HH:mm:ss.mmmmmmmmm AM/PM 转换为 YY-MM-DD HH:mm:ss.mmmmmmm(24 小时格式)
例如:-“04-SEP-12 06.03.45.519068000 PM”到“12-09-04 18:03:45.5190680M”
解决方案
假设值是varchar
格式的a dd-MMM-yy hh.mi.ss.mmmmmmmmm AM(PM)
,而不是标题中的内容,这会将值转换为 a datetime2(7)
。然后,您将控制它在表示层中显示的格式:
DECLARE @date varchar(35) = '04-SEP-12 06.03.45.519068000 PM';
SELECT CONVERT(datetime2(7),STUFF(STUFF(STUFF(V.D,13,1,':'),16,1,':'),27,2,''),9)
FROM (VALUES(@date)) V(D);
推荐阅读
- json - JSON解析成对象,如何解构?[节点JS]
- java - 在 Apache Netbeans9 中创建新的 Maven 项目时出现异常
- json - Bash - 将转义的 JSON 字符串转换为有效的 JSON
- spring - 在 springboot 中使用 JAXB 插件错误为 XSD 生成 JAVA 类文件
- php - Magento 2中的Fotorama画廊和放大镜问题
- curl - wget, curl 命令接受部分文件名
- javascript - Html2Canvas 没有将 svg 图像标签转换为画布
- arrays - 在 WiX 中访问单个集合元素
- php - Laravel 5 AJAX 搜索
- python - 在 Python 中从 Freebase 中提取数据转储