How clock_timestamp() Works in PostgreSQL

In PostgreSQL, clock_timestamp() is a non-SQL-standard time function that returns the current date and time.

An important consideration of this function is that its result changes throughout the execution of a statement. Therefore, you could get a different result in different parts of the statement if you call the function multiple times within a single statement.

Continue reading

How Abs() Works in PostgreSQL

In PostgreSQL, the abs() function returns the absolute value of its argument.

The absolute value means how far the number is away from zero. Therefore, the absolute value of 7 is 7, and the absolute value of -7 is also 7.

Therefore, any negative values passed to abs() are returned as positive values. Positive values and zero are returned unchanged.

Continue reading

SQL Server’s Equivalent to Sleep(): The WAITFOR Statement

In SQL Server, you can use the WAITFOR statement to delay the execution of a batch, stored procedure, or transaction.

It works similar to MySQL‘s sleep() function.

Actually, it’s probably more like a combination of Postgres‘s three “sleep” functions: pg_sleep(), pg_sleep_for(), and pg_sleep_until().

I say this, because SQL Server’s WAITFOR statement gives you the option of specifying either a time delay, or an actual fixed time before execution continues.

Continue reading

How pg_sleep() Works in PostgreSQL

In PostgreSQL, you can use the pg_sleep() function to delay execution for a given number of seconds.

It makes the current session’s process sleep until the specified number of seconds have elapsed. It works similar to MySQL‘s sleep() function, and also TSQL‘s waitfor statement in SQL Server.

The pg_sleep() function accepts a double precision argument, so you can also specify fractional-second delays.

The sleep delay will be at least as long as specified. However, it could be longer depending on factors such as server load, as well as your platform’s effective resolution of the sleep interval.

Continue reading

How pg_sleep_for() Works in PostgreSQL

In PostgreSQL, you can use the pg_sleep_for() function to delay execution for a given interval.

It makes the current session’s process sleep until the specified interval has elapsed.

The sleep delay will be at least as long as specified. However, it could be longer depending on factors such as server load, as well as your platform’s effective resolution of the sleep interval.

Continue reading

How Setseed() Works in PostgreSQL

In PostgreSQL, the setseed() function sets the seed for subsequent random() and random_normal() calls (value between -1.0 and 1.0, inclusive).

The random() function generates a pseudo-random number using a simple linear congruential algorithm. The random_normal() function generates a normally-distributed random number.

If setseed() is called, the results of subsequent random() and random_normal() calls in the current session are repeatable by re-issuing setseed() with the same argument.

Continue reading