You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server如何查询忽略年份、生产日期为当前日期加14天的记录

SQL Server 忽略年份匹配指定月日的生产日期查询方案

直接通过比对日期的月份、日份数值实现,跳过年份维度的判断,符合仅匹配月日的需求:

基础查询(无特殊场景兼容)

SELECT *
FROM 你的实际表名
WHERE 
    MONTH(u_dateofmanufacture) = MONTH(DATEADD(DAY, 14, GETDATE()))
    AND DAY(u_dateofmanufacture) = DAY(DATEADD(DAY, 14, GETDATE()))

逻辑说明

  • 用DATEADD(DAY, 14, GETDATE()计算得到当前日期加14天后的目标日期
  • 分别提取目标日期和u_dateofmanufacture字段的月份、日份做等值匹配,完全忽略年份影响

兼容闰年2月29日版本

如果需要覆盖目标日期为2月29日的特殊场景,当年份无2月29日时默认匹配2月28日的记录,可以使用以下写法:

DECLARE @target_month INT, @target_day INT
SELECT
    @target_month = MONTH(DATEADD(DAY, 14, GETDATE())),
    @target_day = DAY(DATEADD(DAY, 14, GETDATE()))

SELECT *
FROM 你的实际表名
WHERE
    MONTH(u_dateofmanufacture) = @target_month
    AND (
        DAY(u_dateofmanufacture) = @target_day
        OR (
            @target_month = 2 
            AND @target_day = 29 
            AND DAY(u_dateofmanufacture) = 28 
            AND ISDATE(CAST(YEAR(u_dateofmanufacture) AS VARCHAR) + '-02-29') = 0
        )
    )

内容的提问来源于stack exchange,提问作者XXXX

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 05:36:02