SQL DateTime格式转换 [英] SQL DateTime Format Convert

查看:80
本文介绍了SQL DateTime格式转换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想将我的MS SQL上的日期时间格式从默认格式12-12-2000 13:01:01:0111更改为 2000年12月12日上午1:01

i want to change my datetime format on my MS SQL from the default format of 12-12-2000 13:01:01:0111 to December 12, 2000 1:01AM

这是我的代码->

date_issued = CONVERT(VARCHAR(20),date_issued,107) +' '+
              SUBSTRING(CONVERT(VARCHAR(10),date_issued,108),2,0)+
              LTRIM(RIGHT(CONVERT(VARCHAR(25),date_issued,100),7)),

如何将其转换为2000年12月12日凌晨1:01?

推荐答案

如果问题是将'PM'文本转换为'AM',则只需使用'REPLACE',请注意我在下面使用了'GETDATE()'例子

If the issue is to convert 'PM' text to 'AM', then simply use 'REPLACE', note that i used 'GETDATE()' in below examples

  CONVERT(VARCHAR(20),getdate(),107) +'  '+
  SUBSTRING(CONVERT(VARCHAR(10),getdate(),108),2,0)+
  REPLACE(LTRIM(RIGHT(CONVERT(VARCHAR(25),getdate(),100),7)),'PM','AM')

如果其 PM-> AM和AM-> PM ,请尝试以下操作

If its PM->AM and AM->PM then try below

SELECT  "DateTime"=  
  CASE 
     WHEN patindex('%AM', CONVERT(VARCHAR(20), GETDATE(), 100) ) =  0 THEN

       CONVERT(VARCHAR(20),getdate(),107) +'  '+
       SUBSTRING(CONVERT(VARCHAR(10),getdate(),108),2,0)+
       REPLACE(LTRIM(RIGHT(CONVERT(VARCHAR(25),getdate(),100),7)),'PM','AM')

     ELSE 

       CONVERT(VARCHAR(20),getdate(),107) +'  '+
       SUBSTRING(CONVERT(VARCHAR(10),getdate(),108),2,0)+
       REPLACE(LTRIM(RIGHT(CONVERT(VARCHAR(25),getdate(),100),7)),'AM','PM')

  END

这篇关于SQL DateTime格式转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆