我觉得这应该是一个简单的解决方案,但我在上面找不到任何东西......
那么:如何从 datetime
转换为格式为 dd-MMM-yyyy 的 varchar
?
Eg: my_date --> '29-May-2012'
我成功完成的任务是
convert(varchar(20),my_date,105) --> '29-05-2012'
是的,我确实需要在 T-SQL 中正确执行此操作。
最佳答案
native 不支持此格式,但来自 Build a cheat sheet for SQL Server date and time formats ,最接近的可能是:
SELECT REPLACE(CONVERT(CHAR(11), GETDATE(), 106), ' ', '-');
此答案的先前版本建议使用 FORMAT()
,但我已经进行了实验并相信 that's a bad idea at scale除非您只是希望所有查询花费两倍的时间。
关于sql-server - 如何使用 dd-MMM-yyyy 格式将日期时间格式化为 varchar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10822912/