mysql - TIME_FORMAT 返回 NULL

标签 mysql

我在mysql中存储了一个时间,该列被设置为时间,所以它读取13:16:00。当我尝试运行时

SELECT TIME_FORMAT ('alarm_time', '%H:%i) FROM `Alarm`;

我得到一个NULL,我正在尝试获得13:06的结果。

最佳答案

alarm_time 周围的引号导致其被解释为字符串。如果删除它们或用反引号将它们括起来,它将被解释为表的列,其中包含日期。 这些都应该有效

SELECT TIME_FORMAT (alarm_time, '%H:%i' ) FROM `Alarm`;

SELECT TIME_FORMAT (`alarm_time`, '%H:%i' ) FROM `Alarm`;

关于您在评论中提出的比较问题,如果我理解正确,您可以使用类似的方法来做到这一点

yourDate between SUBTIME(yourOtherDate, '00:00:30') and ADDTIME(yourOtherDate, '00:00:30') 

或任何其他间隔

关于mysql - TIME_FORMAT 返回 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43127707/

相关文章:

php - 简单的 PHP : mysql_num_rows

java - 为 Play 框架 1.3.0 Web 应用程序配置 MySQL 服务器时遇到问题

mysql - Spring Boot 应用程序无法连接到 Google Cloud SQL

MYSQL 选择多个不同值的总和

php - 格式化 DateTime Diff 以防止在 PHP 中显示 0 年 0 个月

c# - 为什么我的程序在调用 "OpenAsync()"时终止?

python - Django syncdb 在 SQLite 中工作,在 MySQL 中失败

java - 本地时区存储在 MySQL 中的 Spring Boot JPA 时间

php - 使用 PHP 使用下拉列表显示数据库中的数据

mysql - 从列中选择顶部值