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

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

How Random() Works in PostgreSQL

In PostgreSQL, the random() function returns a pseudo-random value in the range 0.0 <= x < 1.0.

It uses a simple linear congruential algorithm, which is one of the oldest and best-known pseudo-random number generator algorithms.

A pseudo-random number is a number that appears to be random, but is not truely random. A pseudo-random number is not truely random because its value was generated by a known seed. However, it will appear to be random if the user has no knowledge of the seed or algorithm that created it.

Therefore, pseudo-random numbers are often considered good enough for many applications.

Continue reading