如何让 month/day 与另一个没有年份的 month/day 进行比较

How to get month/day to compare with another month/day without year

我需要 select month/day 与另一个 month/day 比较以确定哪一天更大。例如,比较 2/28 和 3/18。我可以用来比较日期的日期格式是什么。

如果您只想显示月份和日期,您可以使用:

DECLARE @myDate DATETIME2 = '02/28/2015'

SELECT CAST(MONTH(@myDate) AS VARCHAR(2)) + '/' + CAST(DAY(@myDate) AS VARCHAR(2))
SELECT LEFT(CONVERT(VARCHAR,@DATE,1),5)

可以使用格式化功能吗?

select format(getdate(),'dd/MM')

在 SQL 服务器中,您可以使用 convert 函数将日期转换为字符串:

https://msdn.microsoft.com/en-us/library/ms187928.aspx

您要使用的格式是 mm/dd/yy,这是 convert 函数上的样式 1。那么你可以简单地取left 5个字符:

select left(convert(char(8),YourDate,1),5) as mm_dd

尝试使用 DATEPART 函数获取日期的日期。

DECLARE @StartDate DATETIME = '20150130';
DECLARE @EndDate DATETIME = '20141225';

SELECT 
    @StartDate AS StartDate, 
    DATEPART(DY, @StartDate) AS StartDy, 
    @EndDate AS EndDate, 
    DATEPART(DY, @EndDate) AS EndDy;