sql - SQL Server 中时间前导零
问题描述
我想在时间之前添加一个前导零(12 小时格式)
例子:
SELECT RIGHT('0000000'+CONVERT(VARCHAR(20), CONVERT(DATETIME, '01:00PM', 0), 100), 7)
结果是下午 1:00
我的预期结果是下午 1:00
但是,当我尝试下面的代码时,它可以工作
SELECT RIGHT('0000000'+'1:00PM',7)
我想知道为什么第一个查询没有给出预期的结果。
解决方案
试试这个
SELECT FORMAT (getdate(), 'hh:mmtt') as time
结果是:07:30AM
SELECT FORMAT (CONVERT(DATETIME, '01:00PM', 0), 'hh:mmtt') as time
结果是:01:00PM
推荐阅读
- java - 新功能究竟做了什么,这条线到底在说什么?
- scala - 在循环中完成时,spark withColumn 无法创建新的数据框
- python-3.x - 确保字符串不包含链接的最佳方法是什么
- c - exec 函数只运行一些命令,不会运行 echo
- python - 如何使用附加过滤的相关对象作为 Django 中的字段来获取结果?
- c - 为什么 "int x = 5; printf("%d %d %d", x==5, x=10, x==5);" 在 C 中打印“0 10 0”?
- android - 我在哪里可以找到 Android 通知图标的允许颜色列表?
- typescript - 定义强制共享值的元组列表
- python-2.7 - 在pcan can总线上发送不同ID的消息,使用python可以
- visual-studio - 如何检索 VS 语法颜色