在Redshift中,我们使用以下命令将datetime转换为格式化字符串,如下所示 -
to_char(<any datetime column>, 'MM/DD/YYYY HH:MI AM') AS dateTime
如何在MS SQL服务器中实现相同功能。我使用转换和强制转换,但我不能像上面那样完全格式化它。我用了
select convert(varchar(20),<any datetime column>,9)
答案 0 :(得分:2)
您可以在Sql Server 2012 +中使用format()
:
select format(getdate(),'MM/dd/yyyy hh:mm tt')
rextester演示:http://rextester.com/QWPWO57409
返回:10/31/2017 06:33 PM
在SQL Server 2012之前,您可以使用convert()
styles和一些字符串操作的组合来获得类似的内容(在几小时内不会引导0
):
select convert(varchar(10),getdate(),101)
+ stuff(right(convert(varchar(20),getdate(),100),8),7,0,' ')
返回:10/31/2017 6:40 PM
答案 1 :(得分:1)
这有帮助吗? Format (Transact-SQL)