有没有办法在 SQL 中只搜索月份和日期?

问题描述 投票:0回答:3

我只想选择某个月份和日期(12/25),但不关心年份。我试过这个

WHERE DAY(date) = 25 AND MONTH(date) = 12;

但这没有用。有什么办法只搜索月份和日期吗?该字段是没有时区的时间戳。

sql
3个回答
3
投票

SQL 标准语法是:

where extract(day from date) = 25 and
      extract(month from date) = 12

但是,大多数数据库都支持

day()
month()
函数。


0
投票

这可能会解决您的问题。我使用 MySQL 进行了测试。

SELECT ... FROM Table t WHERE MONTH(name_column) = :month AND DAY(name_column) = :day

0
投票

您还可以尝试 DATEPART,它提取日期的指定部分:

WHERE DATEPART(day, date) = 25 AND DATEPART(month, date) = 12
© www.soinside.com 2019 - 2024. All rights reserved.