仅在(mysql)表中将存储date部分重新组合

我的应用程序只想将date部分存储在一个表中。 在Sequelize中,只有一个数据types Sequelize.DATE可以使用。 在MySQL表上创buildDATETIME列。

我怎么能有一个数据库表中的列来存储date,没有时间。 部分? MySQL有单独的DATEDATETIME数据types,但是找不到在Sequelize中说明的方法。

或者我们可以使用Date对象来运行查询时忽略时间部分? (我知道我们可以使用getters和setter属性,不知道在运行带有date字段条件的查询时它是否会工作。

注意事项…在Sequelize v3中的DATEONLYtypes不按预期工作。 它返回一个带时区的date时间,所以如果你正在做date比较,它们将不会像你期望的那样工作,除非你的服务器时区为GMT。 就我而言,我正在跨越时区的假期工作,所以这对我来说是一个头痛的问题。 他们确实在2016年1月1日在master分支上有了一个修复 ,但是它并没有进入v3,而且还没有v4。 为了解决这个问题,你可以在你的模型定义中做到这一点,我在同一个链接上find了它:

 regDate: { type: DataTypes.DATEONLY, get: function() { return moment.utc(this.getDataValue('regDate')).format('YYYY-MM-DD'); } }