此查询将保存完整的日期和时间。但我只想保存时间而不是数据库中的日期。有任何查询可以做到这一点吗?
update table set current_time=now();
您的列必须设置为DATETIME或TIMESTAMP。
如果使用TIME类型,则查询将按预期工作。
如果您使用任何其他类型的列,则可以使用其他答案提到的CURTIME()方法或CAST(column AS TIME),但是这会占用更多的磁盘空间,并且如果使用select会导致查询变慢,并阻止您使用各种运算符:
例如 SELECT * FROM table WHERE current_time<'12:00'
SELECT * FROM table WHERE current_time<'12:00'
您可以在此处查看有关不同DATE列类型的更多信息:https : //dev.mysql.com/doc/refman/5.7/en/date-and-time- types.html
请注意,CURTIME()方法不是标准的SQL函数,因此仅适用于MySql