Trong MariaDB, CURRENT_TIME
và CURRENT_TIME()
là từ đồng nghĩa của CURTIME()
.
CURTIME()
là một hàm ngày và giờ được tích hợp sẵn để trả về thời gian hiện tại.
Thời gian được trả về trong 'HH:MM:SS'
hoặc HHMMSS.uuuuuu
định dạng, tùy thuộc vào việc hàm đang được sử dụng trong ngữ cảnh chuỗi hay số.
Cú pháp
CURRENT_TIME()
có thể được sử dụng theo những cách sau:
CURRENT_TIME
CURRENT_TIME([precision])
Trong đó precision
là độ chính xác micro giây.
Ngoài ra, bạn có thể gọi CURTIME()
như thế này:
CURTIME([precision])
Ví dụ
Đây là một ví dụ:
SELECT
CURRENT_TIME,
CURRENT_TIME(),
CURTIME();
Kết quả:
+--------------+----------------+-----------+ | CURRENT_TIME | CURRENT_TIME() | CURTIME() | +--------------+----------------+-----------+ | 09:59:13 | 09:59:13 | 09:59:13 | +--------------+----------------+-----------+
Chúng ta có thể thấy rằng cả ba đều trả về cùng một kết quả.
Ngữ cảnh dạng số
Khi được sử dụng trong ngữ cảnh số, thời gian kết quả là HHMMSS.uuuuuu
định dạng.
Ví dụ:
SELECT
CURRENT_TIME,
CURRENT_TIME + 0,
CURRENT_TIME() + 0;
Kết quả:
+--------------+------------------+--------------------+ | CURRENT_TIME | CURRENT_TIME + 0 | CURRENT_TIME() + 0 | +--------------+------------------+--------------------+ | 10:00:29 | 100029 | 100029 | +--------------+------------------+--------------------+
Độ chính xác
Khi được sử dụng với CURRENT_TIME([precision])
cú pháp, bạn có thể chỉ định độ chính xác micro giây cho kết quả.
Ví dụ:
SELECT
CURRENT_TIME(3),
CURRENT_TIME(3) + 0;
Kết quả:
+-----------------+---------------------+ | CURRENT_TIME(3) | CURRENT_TIME(3) + 0 | +-----------------+---------------------+ | 10:02:00.088 | 100200.088 | +-----------------+---------------------+
Giá trị tối đa cho độ chính xác micro giây là 6. Đây là điều xảy ra khi một số cao hơn được chuyển cho độ chính xác:
SELECT CURRENT_TIME(12);
Kết quả:
ERROR 1426 (42000): Too big precision 12 specified for 'curtime'. Maximum is 6
Thêm vào Giờ hiện tại
Có nhiều cách để thực hiện số học ngày và giờ trong MariaDB. Bạn có thể sử dụng các phương pháp này để thêm số ngày, tuần, giờ, phút, v.v.
Dưới đây là một ví dụ về việc sử dụng toán tử cộng (+
) để thêm 2 giờ vào thời gian:
SELECT
CURRENT_TIME,
CURRENT_TIME + INTERVAL 2 HOUR;
Kết quả:
+--------------+--------------------------------+ | CURRENT_TIME | CURRENT_TIME + INTERVAL 2 HOUR | +--------------+--------------------------------+ | 10:04:19 | 12:04:19 | +--------------+--------------------------------+
Cũng xem các hàm như ADDTIME()
để có một cách thay thế để thêm vào thời gian hiện tại.
Trừ thời gian hiện tại
Dưới đây là một ví dụ về việc sử dụng toán tử trừ (-
) trừ 2 giờ so với thời điểm hiện tại:
SELECT
CURTIME(),
CURTIME() - INTERVAL 2 HOUR;
Kết quả:
+-----------+-----------------------------+ | CURTIME() | CURTIME() - INTERVAL 2 HOUR | +-----------+-----------------------------+ | 10:05:14 | 08:05:14 | +-----------+-----------------------------+
Xem các hàm như SUBTIME()
để có một cách thay thế để trừ vào thời điểm hiện tại.