PostgreSQL: change date by the random number of days

date, postgresql, random, sql

Solution

select date(now() + trunc(random()  * 20) * '1 day'::interval);

Any existing date column can also be used in place of `now()`

See: https://www.postgresql.org/docs/current/functions-datetime.html

Problem

How can I change the date by the random number of days in PostgreSQL? Unfortunately Generate a random number in the range 1 - 10 solution with trunc doesn't work: ``` select date(now()) + (trunc(random() * 20)) ``` results in: ``` ERROR: operator does not exist: date + double precision LÍNEA 1: select date(now()) + (trunc(random() * 20)) ```

Original source

Related problems