为了账号安全,请及时绑定邮箱和手机立即绑定

T-SQL转换日期显示格式

标签:
SQL Server

一般情况之下,存储日期至数据库中,不必在意它的显示格式,只要是日期即可,在程序中显法时,才会去控制它的显示格式。

但是,当你是开发SQL程序,你要求不了前台程序员按照你的想法去做,把日期显示某种格式,他们只管调用你的存储过程。解决这样的问题,我们把SQL输出结果就控制为最终结果,有关这方面企业内网程式应用较多。

你可以参考下面SQL自定义函数,需要的地方调用即可。

5acf07390001405b00110016.jpgView Code CREATE FUNCTION [dbo].[ConvertDate]
(
  @InputDate DATETIME,  --输入日期,或是原格式日期
  @DateFormat NVARCHAR(10)  --日期显示格式
)
RETURNS NVARCHAR(10)
AS
BEGIN  
   DECLARE @DtFormat  NVARCHAR(10) = @DateFormat
   IF CHARINDEX('YYYY', @DtFormat) > 0
      SET @DtFormat = REPLACE(@DtFormat, 'YYYY', STR(YEAR(@InputDate), 4))
   ELSE
      IF CHARINDEX('YY', @DtFormat) > 0
         SET @DtFormat = REPLACE(@DtFormat, 'YY', SUBSTRING(STR(YEAR(@InputDate), 4), 3, 2))

   IF CHARINDEX('MM', @DtFormat) > 0
      SET @DtFormat = REPLACE(@DtFormat, 'MM', STR(MONTH(@InputDate), 2))

   IF CHARINDEX('DD', @DtFormat) > 0
      SET @DtFormat = REPLACE(@DtFormat, 'DD', STR(DAY(@InputDate), 2))

   SET @DtFormat = REPLACE(@DtFormat, ' ', '0')

   RETURN @DtFormat
END

 

实例操作,调用函数:

SELECT [dbo].[ConvertDate] ('2011/06/30','MM/dd/yyyy')

 

执行结果:

 

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
39
获赞与收藏
245

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消