我除掉VBScript帽子,写一些经典的ASP来查询SQL Server 2000数据库。

这是场景:

  • 我有两个日期时间字段,分别称为 fieldA fieldB
  • 字段B 的年份值永远不会大于字段的年份
  • 如果两个字段的年份相同,则

  • 我想要的是 fieldA > = fieldB 的所有记录,与年份无关。只是假装每个字段只是一个月和一天。

    我怎么能得到这个?我对T-SQL日期/时间函数的了解充其量是充斥着。

    最佳答案

    您可能要使用内置的时间功能,例如DAY和MONTH。例如

    SELECT * from table where
    MONTH(fieldA) > MONTH(fieldB) OR(
    MONTH(fieldA) = MONTH(fieldB) AND DAY(fieldA) >= DAY(fieldB))
    

    选择fieldA的月份较大或月份相同且fieldA的日期较大的所有行。

    关于tsql - 如何比较两个日期时间字段却忽略年份?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/223433/

    10-12 19:56