我有两个选项可以将 DOB(出生日期)存储在 MySQL 中。以下哪种方法更好?
在 MySQL 中使用日期类型存储 DOB ,
或者
将 DOB 值分别存储在不同的字段中,例如一个字段中的日、另一个字段中的月份和另一个字段中的年份?
如果客户端只想显示月份和日期,如果我们将 DOB 存储在 MySQL 的日期类型中,是否可以检索它?
我会说总是将日期存储为一种DATE
类型。MySQL 有许多日期函数,它们将计算时间跨度,格式化日期,但你想看到它,并为你提取日期片段。
例如,如果您只需要月份,只需执行MONTH(DOB)
.
如果您需要更有说服力,请查看 StackOverflow,您会看到数百个(如果不是数千个)由于日期值存储为字符串而遇到问题的人提出的问题。
日期逻辑很棘手。如果您可以使用已经调试过的内置类型,则应该使用它。从日期列中检索月份是相当简单的。