MariaDB
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> MariaDB

Cách TIME () hoạt động trong MariaDB

Trong MariaDB, TIME() là một hàm ngày và giờ được tích hợp sẵn để trích xuất phần thời gian từ một biểu thức thời gian hoặc ngày giờ nhất định và trả về nó dưới dạng một chuỗi.

Nó chấp nhận một đối số, là giá trị thời gian hoặc ngày giờ mà bạn muốn trích xuất thời gian.

Cú pháp

Cú pháp như sau:

TIME(expr)

Ở đâu expr là biểu thức thời gian hoặc ngày giờ để trích xuất thời gian.

Ví dụ

Dưới đây là một ví dụ để chứng minh:

SELECT TIME('2030-02-01 10:30:45');

Kết quả:

+-----------------------------+
| TIME('2030-02-01 10:30:45') |
+-----------------------------+
| 10:30:45                    |
+-----------------------------+

Giá trị thời gian

Dưới đây là một ví dụ trích xuất thời gian từ một giá trị thời gian:

SELECT TIME('10:30:45');

Kết quả:

+------------------+
| TIME('10:30:45') |
+------------------+
| 10:30:45         |
+------------------+

Micro giây

Dưới đây là một ví dụ bao gồm micro giây:

SELECT TIME('2030-02-01 10:30:45.123456');

Kết quả:

+------------------------------------+
| TIME('2030-02-01 10:30:45.123456') |
+------------------------------------+
| 10:30:45.123456                    |
+------------------------------------+

Giờ lớn hơn

TIME giá trị có thể nằm trong khoảng '-838:59:59.999999' thành '838:59:59.999999' .

Do đó, phần giờ có thể cao hơn nhiều so với 23 :

SELECT TIME('578:30:45');

Kết quả:

+-------------------+
| TIME('578:30:45') |
+-------------------+
| 578:30:45         |
+-------------------+

Lần tiêu cực

Thời gian phủ định hợp lệ:

Ví dụ

SELECT TIME('-578:30:45');

Kết quả:

+--------------------+
| TIME('-578:30:45') |
+--------------------+
| -578:30:45         |
+--------------------+

Giờ ngoài phạm vi

Giá trị thời gian ngoài phạm vi '-838:59:59.999999' thành '838:59:59.999999' được giới hạn ở ranh giới liên quan và bao gồm một cảnh báo.

Ví dụ:

SELECT TIME('978:30:45');

Kết quả (sử dụng đầu ra dọc):

+-------------------+
| TIME('978:30:45') |
+-------------------+
| 838:59:59         |
+-------------------+
1 row in set, 1 warning (0.003 sec)

Hãy kiểm tra cảnh báo:

SHOW WARNINGS;

Kết quả (sử dụng đầu ra dọc):

+---------+------+---------------------------------------------+
| Level   | Code | Message                                     |
+---------+------+---------------------------------------------+
| Warning | 1292 | Truncated incorrect time value: '978:30:45' |
+---------+------+---------------------------------------------+

Ngày hiện tại

Chúng ta có thể chuyển NOW() làm đối số datetime để sử dụng thời gian hiện tại:

SELECT 
    NOW(),
    TIME(NOW());

Kết quả:

+---------------------+-------------+
| NOW()               | TIME(NOW()) |
+---------------------+-------------+
| 2021-05-27 10:24:23 | 10:24:23    |
+---------------------+-------------+

Đối số không hợp lệ

Khi truyền một đối số không hợp lệ, TIME() trả về null với một cảnh báo:

SELECT TIME('Ten Thirty AM');

Kết quả:

+-----------------------+
| TIME('Ten Thirty AM') |
+-----------------------+
| NULL                  |
+-----------------------+
1 row in set, 1 warning (0.002 sec)

Kiểm tra cảnh báo:

SHOW WARNINGS;

Kết quả:

+---------+------+---------------------------------------+
| Level   | Code | Message                               |
+---------+------+---------------------------------------+
| Warning | 1292 | Incorrect time value: 'Ten Thirty AM' |
+---------+------+---------------------------------------+

Thiếu đối số

Đang gọi TIME() với số lượng đối số sai hoặc không chuyển bất kỳ đối số nào, dẫn đến lỗi:

SELECT TIME();

Kết quả:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1

Và một ví dụ khác:

SELECT TIME('10:30:45', '06:30:45');

Kết quả:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ' '06:30:45')' at line 1

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 11 Hàm để Lấy Ngày, Tháng và Năm từ một Ngày trong MariaDB

  2. Có gì mới trong MariaDB Server 10.5?

  3. Chọn mọi thứ trước hoặc sau một nhân vật nhất định trong MariaDB

  4. Cách hoạt động của COLLATION () trong MariaDB

  5. Cách SHOW CHARACTER SET hoạt động trong MariaDB