Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Chuyển đổi giá trị TIME và DATETIME sang dạng số trong MySQL

Cộng +0 vào giá trị TIME(N) hoặc DATETIME(N) để chuyển sang dạng số.

Quy tắc

  • N = 0 (không có phần microseconds) → chuyển thành INTEGER.
  • 0 (có microseconds) → chuyển thành DECIMAL.

Ví dụ INTEGER (N=0)

mysql> SELECT CURTIME(), CURTIME()+0;
+-----------+-------------------+
| CURTIME() | CURTIME()+0       |
+-----------+-------------------+
| 19:42:54  | 194254            |
+-----------+-------------------+

mysql> SELECT NOW(), NOW()+0;
+-------------------------+----------------------------------+
| NOW()                   | NOW()+0                          |
+-------------------------+----------------------------------+
| 2017-10-27 19:43:43     | 20171027194343                   |
+-------------------------+----------------------------------+

Ví dụ DECIMAL (N=3)

mysql> SELECT CURTIME(3), CURTIME(3)+0;
+--------------+-------------------+
| CURTIME(3)   | CURTIME(3)+0      |
+--------------+-------------------+
| 19:47:40.575 | 194740.575        |
+--------------+-------------------+

mysql> SELECT NOW(3), NOW(3)+0;
+--------------------------+----------------------------------+
| NOW(3)                   | NOW(3)+0                         |
+--------------------------+----------------------------------+
| 2017-10-27 19:48:45.589  | 20171027194845.589               |
+--------------------------+----------------------------------+

Dạng số: YYYYMMDDHHMMSS (hoặc HHMMSS cho TIME), phần thập phân là microseconds.