goose/tests/vertica/testdata/migrations/00002_b.sql

45 lines
1.2 KiB
SQL

-- +goose Up
-- +goose StatementBegin
CREATE TABLE IF NOT EXISTS testing.dim_test_scd
(
test_key BIGINT NOT NULL,
test_id UUID NOT NULL,
valid_from DATE NOT NULL,
valid_to DATE NOT NULL,
is_current BOOLEAN NOT NULL
DEFAULT (valid_to = '9999/12/31'),
external_id VARCHAR(100)
) UNSEGMENTED ALL NODES;
-- +goose StatementEnd
-- +goose StatementBegin
CREATE PROJECTION IF NOT EXISTS testing.dim_test_scd_proj_is_current AS
SELECT test_key,
test_id,
valid_from,
valid_to,
is_current,
external_id
FROM testing.dim_test_scd
ORDER BY is_current, test_id
SEGMENTED BY HASH(test_key) ALL NODES;
-- +goose StatementEnd
-- +goose StatementBegin
CREATE OR REPLACE VIEW testing.Test AS
SELECT test_key,
test_id,
external_id
FROM testing.dim_test_scd
WHERE is_current = true;
-- +goose StatementEnd
-- +goose Down
-- +goose StatementBegin
DROP VIEW IF EXISTS testing.Test;
-- +goose StatementEnd
-- +goose StatementBegin
DROP PROJECTION IF EXISTS testing.dim_test_scd_proj_is_current;
-- +goose StatementEnd
-- +goose StatementBegin
DROP TABLE IF EXISTS testing.dim_test_scd;
-- +goose StatementEnd