Php 如何为薪资报告插入月份和年份

Php 如何为薪资报告插入月份和年份,php,mysql,sql,date,database-design,Php,Mysql,Sql,Date,Database Design,我正在尝试使用PHP和MySQL将员工的月薪报告保存在数据库中。那么,如何只添加月份和年份来将其存储到数据库中呢?那么我还需要包括日期吗?但是将日期包括在数据库中是没有意义的,因为薪资报告将基于月份,而不是日期。有什么建议吗?我建议将此信息存储为日期数据类型。如果你不在乎一个月的哪一天,那就一直关注一个月的第一天 这种方法的好处是: 数据完整性:数据库确保您存储的任何内容在写入时都是有效的日期;如果您使用另一种数据类型,这将非常复杂:您如何才能在手前判断2020-13是否为无效日期 效率:将

我正在尝试使用PHP和MySQL将员工的月薪报告保存在数据库中。那么,如何只添加月份和年份来将其存储到数据库中呢?那么我还需要包括日期吗?但是将日期包括在数据库中是没有意义的,因为薪资报告将基于月份,而不是日期。有什么建议吗?

我建议将此信息存储为
日期
数据类型。如果你不在乎一个月的哪一天,那就一直关注一个月的第一天

这种方法的好处是:

  • 数据完整性:数据库确保您存储的任何内容在写入时都是有效的日期;如果您使用另一种数据类型,这将非常复杂:您如何才能在手前判断2020-13是否为无效日期

  • 效率:将数据存储为
    date
    ,您可以利用MySQL的日期算术功能,随心所欲地使用日期函数(例如:在使用适当的数据类型时,为给定日期添加7个月是一件容易的事情,但使用自定义值要复杂得多)

您可以将日期保存在db中,并且可以在获取报告时保存 使用mysql查询的MONTH()、YEAR()函数为您查询其他条件 必须在表中创建两列来分别存储年份和月份


在我看来,最好将日期值存储在日期数据类型列中。只要有一个日期值,就可以做很多事情。你现在可能不需要它,但谁知道将来会怎样。只需储存一个月的第一天就可以了。但这取决于。。。