mysql - phpMyAdmin - 以毫米为单位存储时间 :ss:ms format

标签 mysql time phpmyadmin

在 phpMyAdmin 中,我想记录比赛的单圈时间。格式需要为 mm:ss:ms 格式。

如何将这个值存储在数据库中?是否有允许它的数据类型?我试过时间、时间戳和日期时间,但它们都没有以毫秒为单位存储值。

如果这不可能,我可以将其存储为 int 或 varchar,然后在选择查询中将其转换为 mm:ss:ms 格式以用于输出显示吗?

示例输出:

1:35.547

那就是:

1 minute, 35 secs, 547 milliseconds

有什么想法吗?

最佳答案

MySQL 5.6.4 and up expands fractional seconds support for TIME, DATETIME, and TIMESTAMPvalues, with up to microseconds (6 digits) precision.

http://dev.mysql.com/doc/refman/5.6/en/fractional-seconds.html

在早期版本中,您必须手动实现该功能。我能想到的最简单的选择是将毫秒数存储在单独的 SMALLINT 列中,然后:

SELECT CONCAT(
    TIME_FORMAT(time_col, '%i minutes, %s seconds, '),
    milliseconds_col,
    ' milliseconds'
) FROM ...

或者,您可以将时间存储为 DECIMAL(10, 3)。不幸的是,这两种方法都需要繁琐的手动转换。

关于mysql - phpMyAdmin - 以毫米为单位存储时间 :ss:ms format,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27958994/

相关文章:

mysql - 这些以前应该用 MySQL 编写的 SQL 语句现在是 MySQLi 的提示吗?

mysql - 无法在 MySQL 中创建外键约束

MYSQL时间戳转换

php - 如何在MySQL中动态插入数据

php - 如何在 PhpMyAdmin 左侧菜单中列出所有表?

Pentaho CE 仪表板中的 MySQL 查询参数

php - 选择带有复选框的 mysql 列并在 html 表、php 中显示数据

mysql - 查找并显示第二列条目全部重复的所有唯一 ID

ruby-on-rails - 将小时,分钟和秒转换为ruby中的秒

Java,更改 PC 上的时区后测试失败