MySQL 如何在MySQL中将TIME和DATETIME值转换为数字形式?
将TIME(N)和DATETIME(N)值转换为数字形式可以通过添加0(+0)来完成。以下是这种类型的转换的规则−
阅读更多:MySQL 教程
转换为INTEGER
当N为0时,TIME(N)和DATETIME(N)值将转换为整数。
例如,CURTIME()和NOW()的值可以转换为整数值,如下所示−
mysql> SELECT CURTIME(), CURTIME()+0;
+-----------+-------------------+
| CURTIME() | CURTIME()+0 |
+-----------+-------------------+
| 19:42:54 | 194254 |
+-----------+-------------------+
1 row in set (0.04 sec)
mysql> SELECT NOW(), NOW()+0;
+-------------------------+----------------------------------+
| NOW() | NOW()+0 |
+-------------------------+----------------------------------+
| 2017-10-27 19:43:43 | 20171027194343 |
+-------------------------+----------------------------------+
1 row in set (0.00 sec)
转换为DECIMAL
当N大于0时,TIME(N)和DATETIME(N)值将转换为十进制数。
例如,CURTIME()和NOW()的值可以转换为十进制数值,如下所示−
mysql> SELECT CURTIME(), CURTIME(3)+0;
+-----------+-------------------+
| CURTIME() | CURTIME()+0 |
+-----------+-------------------+
| 19:47:40 | 194740.575 |
+-----------+-------------------+
1 row in set (0.04 sec)
mysql> SELECT NOW(), NOW(3)+0;
+-------------------------+----------------------------------+
| NOW() | NOW()+0 |
+-------------------------+----------------------------------+
| 2017-10-27 19:48:45 | 20171027194845.589 |
+-------------------------+----------------------------------+
1 row in set (0.00 sec)