Разница между PostgreSQL NOW() и CURRENTTIMESTAMP заключается в том, что NOW() возвращает текущую дату и время в начале выполнения запроса, в то время как CURRENTTIMESTAMP — текущую дату и время начала текущей транзакции. 1
Таким образом, CURRENT_TIMESTAMP подходит, когда временная метка должна быть статичной внутри транзакции, а NOW() — когда метка должна меняться при каждом выполнении запроса, например, при расчёте разницы во времени между двумя значениями временных меток. 1
Кроме того, CURRENT_TIMESTAMP — стандартная функция SQL, в то время как NOW() специфична для PostgreSQL. 13
Выбор между этими функциями зависит от конкретных требований и задач разработчика.