Việc chuyển đổi các giá trị TIME (N) và DATETIME (N) sang dạng số có thể được thực hiện bằng cách thêm 0 (+0) vào chúng. Sau đây là các quy tắc cho loại chuyển đổi như vậy -
Được chuyển đổi thành INTEGER
Giá trị TIME (N) và DATETIME (N) sẽ được chuyển đổi thành số nguyên khi N bằng 0.
Ví dụ:giá trị của CURTIME () và NOW () có thể được chuyển đổi thành giá trị số nguyên như sau -
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)
Được chuyển đổi thành DECIMAL
Giá trị TIME (N) và DATETIME (N) sẽ được chuyển đổi thành số nguyên khi N lớn hơn 0.
Ví dụ:các giá trị của CURTIME () và NOW () có thể được chuyển đổi thành các giá trị thập phân như sau -
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)