【发布时间】:2010-11-01 12:29:04
【问题描述】:
我有一个 MySQL member 表,其中有一个 DOB 字段,它以 DATE 格式存储所有成员的出生日期(注意:它有“年份”部分)
我正在尝试找到正确的 SQL 来:
- 列出未来 14 天内的所有生日
另一个查询:
- 列出过去 14 天内的所有生日
直接比较当前日期:
(DATEDIFF(DOB, now()) <= 14 and DATEDIFF(DOB, now()) >= 0)
由于当前年份和 DOB 年份不同,因此不会获取任何内容。
但是,将 DOB 转换为“今年”根本行不通,因为今天可能是 1 月 1 日,候选人的 DOB 可能是 12 月 31 日(反之亦然)
如果您能提供帮助,那就太好了,非常感谢! :)
【问题讨论】:
-
哇。我以为这很容易。我做了一些修改,这比我乍一看要难得多。感谢 Code Kata!