🌐 Better way to store times (#1037)

This commit is contained in:
Luke Vella 2024-02-29 16:36:21 +05:30 committed by GitHub
parent 7b996aa24f
commit 08729168d2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
14 changed files with 150 additions and 29 deletions

View file

@ -0,0 +1,27 @@
-- AlterTable
ALTER TABLE "options" ADD COLUMN "start_time" TIMESTAMP(0);
-- migration.sql
DO
$do$
DECLARE
poll_record RECORD;
BEGIN
FOR poll_record IN SELECT id, "time_zone" FROM polls
LOOP
IF poll_record."time_zone" IS NULL OR poll_record."time_zone" = '' THEN
UPDATE options
SET "start_time" = "start"
WHERE "poll_id" = poll_record.id;
ELSE
UPDATE options
SET "start_time" = ("start"::TIMESTAMP WITHOUT TIME ZONE) AT TIME ZONE poll_record.time_zone
WHERE "poll_id" = poll_record.id;
END IF;
END LOOP;
END
$do$;
-- Make start_time not null
ALTER TABLE "options" ALTER COLUMN "start_time" SET NOT NULL;