sql server DATENAME 获取 年 月 日 输出2位 格式

chinawcs 2019-09-10 11:01:47
假如今天日期 是 2019-09-09

select DATENAME(DAY,GETDATE())
select DATENAME(D,GETDATE())
select DATENAME(DD,GETDATE())



为什么 都输出的 日 是 9 而不是09 呢 ? 我想要 2019-09-09 格式 而不是 2019-09-9
...全文
541 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
先转换成字符串 用substring截取

SELECT SUBSTRING(convert(varchar(11),GETDATE(), 23),6,2)
听雨停了 2019-09-11
  • 打赏
  • 举报
回复

select RIGHT('0'+DATENAME(month,'2019-09-09'),2)
shoppo0505 2019-09-11
  • 打赏
  • 举报
回复
select convert(varchar(11),GETDATE(), 23)
stelf 2019-09-11
  • 打赏
  • 举报
回复
lpad自己往左边拼接一个0吧
knightshou 2019-09-11
  • 打赏
  • 举报
回复
SELECT FORMAT(DATEPART(DAY,'20190909'),'00')
knightshou 2019-09-11
  • 打赏
  • 举报
回复
我好奇楼主开了多少窗口哦。多久没有关SSMS了。400多 腻害。
吉普赛的歌 版主 2019-09-11
  • 打赏
  • 举报
回复
SELECT CONVERT(CHAR(2),GETDATE(),101)
/*
09
*/
吉普赛的歌 版主 2019-09-11
  • 打赏
  • 举报
回复
2016以上的版本:
SELECT FORMAT(GETDATE(),'MM')
/*
09
*/
chenghangstar 2019-09-11
  • 打赏
  • 举报
回复
SELECT RIGHT(CONVERT(VARCHAR(8),(GETDATE()),112),2)
jereco 2019-09-11
  • 打赏
  • 举报
回复
select convert(varchar(11),GETDATE(), 120)

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧