我正在寻找的是一些查询帮助。
我有一个带有 unixtime 的 MySql 字段,它代表接下来几十个月的每个日期。对于表中的每个条目,我必须将日期提前到下个月的第一天。
日期都是每个月的 20 日,所以我想将 6 月 20 日移动到 7 月 1 日,将 7 月 20 日移动到 8 月 1 日,依此类推。我不能只添加 11 天,因为考虑到 31 天和 2 月的月份,那不会是下个月的第一天。
我一直在玩这样的想法:
update table set column = UNIX_TIMESTAMP(column + MONTH(column)+1,DAY(1)) where index_column = '1234'
但我很确定那是行不通的。我可以使用这样的东西来转换它,然后尝试将其转换回来:
update table set column = DATEFORMAT(column,'%Y-$c-%d %H:%i:%s') where index_column == '1234'
我仍然认为必须有更好的方法。坦率地说,我会手动更新几十个,但我知道这会经常出现,并且不想每次都手动进行。
我不喜欢使用代码,而是想直接在 MySql 中执行。我希望有人可以帮助我解决这个问题。
先感谢您。