21 lines
875 B
SQL
21 lines
875 B
SQL
-- +goose Up
|
|
-- Long-format (tidy) values unpivoted from a vector_with_kato dataset's
|
|
-- attribute table: one row per (KATO code, date). value holds numeric cells,
|
|
-- value_text holds non-numeric ones.
|
|
CREATE TABLE dataset_observations (
|
|
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
dataset_id UUID NOT NULL REFERENCES datasets (id) ON DELETE CASCADE,
|
|
kato_code TEXT NOT NULL,
|
|
date DATE NOT NULL,
|
|
value DOUBLE PRECISION,
|
|
value_text TEXT,
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
|
);
|
|
|
|
CREATE UNIQUE INDEX uq_dataset_observations ON dataset_observations (dataset_id, kato_code, date);
|
|
CREATE INDEX idx_dataset_observations_dataset ON dataset_observations (dataset_id);
|
|
CREATE INDEX idx_dataset_observations_kato_date ON dataset_observations (kato_code, date);
|
|
|
|
-- +goose Down
|
|
DROP TABLE dataset_observations;
|