PostgreSQL Время без часового пояса - PullRequest
2 голосов
/ 24 марта 2020

У меня есть данные 3k в моей базе данных, и я хотел бы сгенерировать случайное время для столбца operation_start и operation_end.

нижеприведенный код - это код, который я использую, вручную обновлять каждые operation_start и operation_end

UPDATE dashboard.inventory
SET operation_start = '1:00:43',
operation_end = '2:00:43',
update_date = NOW()
WHERE terminal_id = '01231238';

, но обновление всех данных 3k является проблемой. Я попробовал поискать в Google, но, похоже, ответа нет, за исключением даты с отметкой

1 Ответ

2 голосов
/ 24 марта 2020

Вы можете использовать время арифмети c. Тем не менее, это может быть проще в два этапа, потому что вы хотите, чтобы время окончания было через час после начала:

UPDATE dashboard.inventory
    SET operation_start = '00:00:00' + floor(random() * 23*60*60) * interval '1 second',
        update_date = NOW()
    WHERE terminal_id = '01231238';

UPDATE dashboard.inventory
    SET operation_end = operation_start + interval '1 hour'
    WHERE terminal_id = '01231238';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...