如何在没有mysql的秒数的情况下选择日期和时间?

Sje*_*mie 25 mysql sql datetime

如何从表中包含日期值的列中选择mysql中没有秒的日期和时间?"YYYY-MM-DD HH:MM:SS"应为"YYYY-MM-DD HH:MM"

Rus*_*gan 56

SELECT DATE_FORMAT(`date`, '%Y-%m-%d %H:%i') AS `formatted_date` FROM `table`;
Run Code Online (Sandbox Code Playgroud)


Sal*_*n A 7

正确的解决方案是将秒数清零并保留数据类型:

SELECT `datetime` - INTERVAL EXTRACT(SECOND FROM `datetime`) SECOND
FROM `some table`
Run Code Online (Sandbox Code Playgroud)

如果您的日期时间列包含微秒,则使用此变体:

SELECT `datetime` - INTERVAL EXTRACT(SECOND_MICROSECOND FROM `datetime`) SECOND_MICROSECOND
FROM `some table`
Run Code Online (Sandbox Code Playgroud)

SQL小提琴

理论上,它应该比使用日期格式化函数的示例更快。


Cri*_*tiC 5

SELECT DATE_FORMAT('2011-07-16 22:23:15', '%Y-%m-%d %H:%i');
Run Code Online (Sandbox Code Playgroud)

  • 返回 2011-July-16 22:23,这可能不是我们想要的。更好地使用 '%Y-%m-%d %H:%i' 和小写 %m 为 '2011-07-16 22:23' (2认同)