PostgreSQL CURRENT_TIMESTAMP Date/Time Function
PostgreSQL CURRENT_TIMESTAMP Date/Time Function
The PostgreSQL CURRENT_TIMESTAMP
function is used to get the current date and time with time zone at the start of the current transaction. This function can also return the current date and time with limited precision. It is essential for retrieving the current timestamp for various time-based calculations and comparisons.
Syntax
CURRENT_TIMESTAMP
The CURRENT_TIMESTAMP
function does not take any arguments and returns a timestamp with time zone representing the current date and time at the start of the current transaction.
CURRENT_TIMESTAMP(integer)
The CURRENT_TIMESTAMP
function can also take an integer argument to specify the number of decimal places of precision for the seconds field.
Example PostgreSQL CURRENT_TIMESTAMP Queries
Let's look at some examples of PostgreSQL CURRENT_TIMESTAMP
function queries:
1. Basic CURRENT_TIMESTAMP Example
SELECT CURRENT_TIMESTAMP AS current_timestamp;
This query retrieves the current date and time with time zone at the start of the current transaction.
2. CURRENT_TIMESTAMP with Limited Precision
SELECT CURRENT_TIMESTAMP(0) AS current_timestamp_precise;
This query retrieves the current date and time with time zone at the start of the current transaction, with the seconds field limited to zero decimal places of precision.
3. CURRENT_TIMESTAMP with Column Values
SELECT id, name, CURRENT_TIMESTAMP AS query_time
FROM people;
This query retrieves the id
, name
, and the current date and time with time zone at the start of the current transaction for each row in the people
table.
Full Example
Let's go through a complete example that includes creating a table, inserting data, and using the CURRENT_TIMESTAMP function to capture the current date and time at the start of the transaction.
Step 1: Creating a Table
This step involves creating a new table named people
to store people's data.
CREATE TABLE people (
id SERIAL PRIMARY KEY,
name TEXT
);
In this example, we create a table named people
with columns for id
and name
.
Step 2: Inserting Data into the Table
This step involves inserting some sample data into the people
table.
INSERT INTO people (name)
VALUES ('Alice'),
('Bob'),
('Charlie');
Here, we insert data into the people
table.
Step 3: Using the CURRENT_TIMESTAMP Function
This step involves using the CURRENT_TIMESTAMP
function to capture the current date and time during the execution of queries.
Retrieve current timestamp:
SELECT CURRENT_TIMESTAMP AS current_timestamp;
This query retrieves the current date and time with time zone at the start of the current transaction.
Retrieve current timestamp with limited precision:
SELECT CURRENT_TIMESTAMP(0) AS current_timestamp_precise;
This query retrieves the current date and time with time zone at the start of the current transaction, with the seconds field limited to zero decimal places of precision.
Capture current timestamp with column values:
SELECT id, name, CURRENT_TIMESTAMP AS query_time
FROM people;
This query captures the current date and time with time zone at the start of the current transaction for each row in the people
table.
Conclusion
The PostgreSQL CURRENT_TIMESTAMP
function is a fundamental tool for retrieving the current date and time with time zone at the start of the current transaction and performing time-based calculations. Understanding how to use the CURRENT_TIMESTAMP
function and its syntax is essential for accurate time-based operations in PostgreSQL databases.