MySQL - CURRENT_TIME() Function



In a local system, the time is usually calculated from the epoch ('1970-01-01 00:00:00') UTC time. To store time in a MySQL database, we can use the DATETIME, TIME and TIMESTAMP temporal datatypes. And MySQL provides functions to perform different operations, like extracting time and date, converting time from one time zone to another, etc. on such data.

One such function is the MySQL CURRENT_TIME() function. It is a synonym for CURTIME() function.

MySQL CURRENT_TIME() Function

The MySQL CURRENT_TIME() function is used to retrieve the current time of the local system. The resultant value is a string or a numerical value based on the context and, the time returned will be in the 'hh:mm:ss' or hhmmss format.

You can also use CURRENT_TIME instead of CURRENT_TIME() to retrieve the time local to the system.

Syntax

Following is the syntax of the above function −

CURRENT_TIME();

Parameters

This method does not accept any parameters.

Return value

This function returns the current time as a TIME data type in the format 'HH:MM:SS', representing hours, minutes, and seconds.

Example

Following example demonstrates the usage of the CURRENT_TIME() function −

SELECT CURRENT_TIME();

Output

Following output is obtained −

CURRENT_TIME()
20:53:49

Example

Following is an example of this function in numerical context −

SELECT CURRENT_TIME() +0;

Output

Following output is obtained −

CURRENT_TIME() +0
205404

Example

You can add seconds to the current time as shown below −

SELECT CURRENT_TIME()+12;

Output

Following output is obtained −

CURRENT_TIME()+12
205432

Example

We can also subtract the desired number of seconds from the current time using this function −

SELECT CURRENT_TIME()-22213;

Output

Following output is obtained −

CURRENT_TIME()-22213
183388

Example

You can use CURRENT_TIME instead of CURRENT_TIME() to retrieve the current time.

SELECT CURRENT_TIME;

Following output is obtained −

CURRENT_TIME
20:57:46

In Numeric Context

SELECT CURRENT_TIME+0;

Following output is obtained −

CURRENT_TIME+0
205759

Example

Let us create a table with name ORDERS in MySQL database using CREATE TABLE statement as follows −

CREATE TABLE ORDERS (
   OID INT NOT NULL,
   DATE VARCHAR (20) NOT NULL,
   CUSTOMER_ID INT NOT NULL,
   AMOUNT DECIMAL (18, 2)
);

Now, we will insert the records in ORDERS table using INSERT statements −

INSERT INTO ORDERS VALUES 
(102, '2009-10-08 00:00:00', 3, 3000.00),
(100, '2009-10-08 00:00:00', 3, 1500.00),
(101, '2009-11-20 00:00:00', 2, 1560.00),
(103, '2008-05-20 00:00:00', 4, 2060.00);

Following query is used to calculate the difference in −

SELECT OID, DATE, TIMEDIFF(CURRENT_TIME(), DATE), AMOUNT 
FROM ORDERS;

CURRENT_TIME

Following query calculates and displays the remaining number of days and time for the subscription to complete −

SELECT OID, DATE, TIMEDIFF(CURRENT_TIME, DATE), AMOUNT 
FROM ORDERS;

Output

The output is displayed as follows −

OID DATE DATEDIFF(CURDATE(), DATE) AMOUNT
102 2009-10-08 00:00:00 NULL 3000.00
100 2009-10-08 00:00:00 NULL 1500.00
101 2009-11-20 00:00:00 NULL 1560.00
103 2008-05-20 00:00:00 NULL 2060.00
Advertisements