【问题标题】:MySQL store month & year onlyMySQL 仅存储月份和年份
【发布时间】:2014-08-07 11:11:30
【问题描述】:

有没有办法在 MySQL 中做到这一点,或者有什么比制作字段类型 varchar 更好的方法?

Output should be like
06/2014

相关:mysql datatype to store month and year only

【问题讨论】:

  • 是的,但是它们不会按顺序(如日期)排序。
  • 如果您想保持完整性(也许还想保持理智),为什么不只使用 2 个 INT 列来表示年份和月份。然后,您可以在查询表时格式化输出。
  • @unutbu,在我目前的情况下不需要排序。
  • @Frazz,实际上使用 2 列是一种方式,但在这方面使用 1 对我来说会很舒服。

标签: mysql


【解决方案1】:

希望您有充分的理由这样做;您可以为您的日期设置一个默认日期(最好是第一天),然后让月份不同。

STR_TO_DATE('06/01/2014', '%m/%d/%Y')

我建议您存储整个日期并仅使用 Month() 和 Year() 函数,因为您仍然可以运行查询。

【讨论】:

  • 但这给应用程序留下了很多问题。如果需要,通常会将外键、唯一性和完整性从服务器层移至应用层。
  • @Ramie,感谢您的快速回复。你是对的,但不是让 fieldtype varchar 来保存“06/2014”,更好吗?
  • 我想保存完整日期然后使用 MONTH() 和 YEAR() 就可以了。 :)
猜你喜欢
  • 2012-02-26
  • 2012-12-07
  • 2012-02-24
  • 1970-01-01
  • 2019-04-25
  • 2011-06-27
  • 1970-01-01
  • 2013-02-05
相关资源
最近更新 更多