sql-server - 将字符串数据类型日期值转换为日期格式dd-mm-yyyy
问题描述
这是要转换的给定值:
DECLARE @Dt VARCHAR(20) = '16-12-1997 00:00:00'
我想转换成:16-12-1997
尝试#1:
SELECT CAST(@Dt AS DATE)
错误:
从字符串转换日期和/或时间时转换失败。
尝试#2:
SELECT CONVERT(VARCHAR(20), @Dt, 105)
结果:
16-12-1997 00:00:00
尝试#3:
SELECT LEFT(@Dt, 10)
尝试#3 有效,但可以通过转换/强制转换吗?
解决方案
这可以通过以下方式完成:
DECLARE @Dt VARCHAR(20) = '16-12-1997 00:00:00'
SELECT CONVERT(varchar(10), @Dt);
这是你要找的东西吗?
推荐阅读
- postgresql - 如何使用 INTO 从 postgres 函数内部的查询中分配选择结果
- r - 使用 ggplot 2 创建李克特比例图
- node.js - 如何使 node_modules 全局而不是驻留在项目中的文件夹
- python - Python将LIST转换为带有数组(列表)的字典
- excel - 不等式匹配函数多个条件(excel函数)
- python - 使用 Python 创建一个循环(以模拟类似“goto”的解决方案)
- html - 需要有关如何在我的 Angular 项目中使用引导表组件的帮助
- php - PHP stripslashes() breaking emojis
- reactjs - 在 React Native 和/或类似性质的类似框架中采取抽象多远
- sql-server - 选择“N”组连续的“X”条记录