sql - 转换 SQL Server 日期格式
问题描述
我正在使用这个查询:
select convert(nvarchar(MAX), getdate(), 100);
它回来了
Aug 16 2018 3:45PM
我正在尝试获取此日期格式:
16 AUG 15:45
请帮助我实现它。谢谢
解决方案
这可以让你得到你想要的,并且不使用非常慢的FORMAT
功能:
SELECT D, CONVERT(varchar(6),DATEADD(HOUR, -1, D),13) + ' ' + CONVERT(varchar(5),CONVERT(time(0),DATEADD(HOUR, -1, D)),14)
FROM (VALUES(CONVERT(datetime2(0),'2018-08-16T15:45:00'))) V(d);
编辑:似乎 OP再次移动了目标帖子(最初他们希望时间从上午 01:38 更改为 13:38,然后从下午 03:45 更改为 14:45),因此DATEADD
不需要。不过,我并没有费心删除它,因为当时它是正确的;而且我不相信球门柱不会再次移动。
推荐阅读
- html5-video - Chromium 视频自动播放不起作用(忽略 autoplay-policy=no-user-gesture-required 参数)
- java - 字符串生成器在 TextView Android Kotlin 中不起作用
- c# - 在 .NET Framework 4.5 中使用雪花
- html - 在相同的块上,但有间距
- postgresql - 如何使用 psycopg2 客户端从选择查询中获取 col 标头?
- python - 如何匹配来自具有不同大小的两个数据框的多个列?
- shell - 在 shell UNIX 上恢复已终止的作业
- html - 如何自动创建表?使用 html+angular+typescript
- ios - 是否有人为 SCNAnimation Player 使用了 animationDidStop 或 animationDidStart ?
- ios - 斯威夫特用户界面。NavigationView 嵌套按钮