格式为MMMYY的Sql日期

格式为MMMYY的Sql日期,sql,sql-server-2008,tsql,Sql,Sql Server 2008,Tsql,如何将sql中的当前日期设置为MMMYY即OCT13 select Convert(varchar(10),getdate(),6) this will generate 11 Oct 13 我要去13号 谢谢你的帮助 前端应用程序无法执行此格式化。我正在将数据从sql导出到另一台sql server 谢谢在Oracle中,“DD-MON-YY”可以使用(您可以在您的案例中尝试MON-YY)。 截止日期(sysdate,'MON-YY') 也可以在SQL server中尝试一下: UPPER(

如何将sql中的当前日期设置为MMMYY即OCT13

select Convert(varchar(10),getdate(),6) this will generate 11 Oct 13
我要去13号

谢谢你的帮助

前端应用程序无法执行此格式化。我正在将数据从sql导出到另一台sql server 谢谢

在Oracle中,“DD-MON-YY”可以使用(您可以在您的案例中尝试MON-YY)。 截止日期(sysdate,'MON-YY')

也可以在SQL server中尝试一下:

UPPER(SUBSTRING(CONVERT(varchar, dt, 13), 4, 3)) +
SUBSTRING(CONVERT(varchar, dt, 13), 1, 2)

使用FORMAT功能,将其转换为正确的格式非常容易: (适用于SQL Server 2012)


SELECT FORMAT(GETDATE(),'MMMyy')

为什么要在SQL中执行此操作,为什么不直接获取原始的
datetime
值并更改其在消费应用程序中的显示方式?为什么不在前端处理格式?或者稍微短一点的选择替换(CONVERT(VARCHAR(6),GETDATE(),0),“”)
SELECT REPLACE(RIGHT(CONVERT(VARCHAR(9), GETDATE(), 6), 6), ' ', '') AS [MMYY]
SELECT UPPER(REPLACE(RIGHT(CONVERT(VARCHAR(9), GETDATE(), 6), 6), ' ', '')) AS [Mon-YY]