Tia*_*ago 10
您可以将其存储为DATE对象,就像通常使用非重复日期一样.的,如果你使用MySQL(我相信其他DBMS也有此功能),你可以描述检索使用MySQL的函数生日在这里:
SELECT *
FROM table_name
WHERE
MONTH(date_field) = desired_month AND
DAY(date_field) = desired_day
Run Code Online (Sandbox Code Playgroud)
处理数千条记录时,此方法可能会有点慢.如果是这种情况,您可以使用3个独立的INT存储生日,每个INT一个(年,月,日).然后你搜索这样的生日:
SELECT *
FROM table_name
WHERE
month_field = desired_month AND
day_field = desired_day
Run Code Online (Sandbox Code Playgroud)
如果您使用最后一种方法,我建议您同时存储生日的DATETIME版本,以便您可以在没有任何操作的情况下构建日期.您还可以索引3个字段中的每一个(非唯一),因此检索它们的速度更快.
“日期”应该不错。
DATE 类型用于具有日期部分但没有时间部分的值。MySQL 以 'YYYY-MM-DD' 格式检索和显示 DATE 值。支持的范围是“1000-01-01”到“9999-12-31”。
更多细节:http : //dev.mysql.com/doc/refman/5.5/en/datetime.html