如何在MySQL DATETIME字段中存储DATE / TIME / YEAR?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在MySQL DATETIME字段中存储DATE / TIME / YEAR?相关的知识,希望对你有一定的参考价值。
对不起,如果之前已经问过这个问题。我似乎无法找到答案。
mysql具有以下类型的日期/时间类型:
DATE: 0000-00-00
TIME: 00:00:00
DATETIME: 0000-00-00 00:00:00
TIMESTAMP: 0000-00-00 00:00:00
YEAR: 0000
我知道可以使用这些数据类型中的每一种来存储它们中的每一种。
如何仅在商业开放/关闭时间内存储TIME,仅在公司年度成立时使用YEAR,在DATETIME字段中仅存储DATE如出生日期?谢谢。
PS:我使用php,如果这有帮助,虽然我正在寻找一个纯粹的MySQL解决方案。
答案
我认为你应该将所有这些存储为日期时间。营业时间可能因日期而异,您可能还需要公司成立时的日期或月份。
通过将所有内容存储为日期时间,您可能会持久保存额外信息。但总是可以轻松检索感兴趣的信息。例如,为了获得公司成立的年份,你可以使用YEAR(date_founded)
,或者如果你感觉更复杂,你可以使用DATE_FORMAT('date_founded', '%Y')
。
另一答案
您可以做的是存储时间戳,然后使用时间戳来获取您想要从时间戳中检索的任何信息。根据您使用的语言,有可用的功能来帮助您实施。分享您正在使用的语言,以便我们为您提供更好的帮助
以上是关于如何在MySQL DATETIME字段中存储DATE / TIME / YEAR?的主要内容,如果未能解决你的问题,请参考以下文章
mysql 把时间换成时间戳进行存储在int字段中还是直接用datetime好
JDBC prepareStatement 存储在mysql上的datetime 时间字段报错的解决方法