mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-05-20 23:10:37 +00:00
* feat: parse column names when creating view * feat: save the view definition into view info * feat: supports view columns and show create view * feat: save plan columns for validation * fix: typo * chore: comments and style * chore: apply suggestions * test: assert CreateView display result * chore: style Co-authored-by: Weny Xu <wenymedia@gmail.com> * chore: avoid the clone Co-authored-by: Weny Xu <wenymedia@gmail.com> * fix: compile error after rebeasing --------- Co-authored-by: Weny Xu <wenymedia@gmail.com>
45 lines
824 B
SQL
45 lines
824 B
SQL
CREATE DATABASE schema_for_view_test;
|
|
|
|
USE schema_for_view_test;
|
|
|
|
CREATE TABLE t1(a INT, b STRING, c TIMESTAMP TIME INDEX);
|
|
|
|
INSERT INTO t1 VALUES (41, "hello", 1), (42, "world", 2), (43, "greptime", 3);
|
|
|
|
CREATE VIEW v1 AS SELECT a, b FROM t1;
|
|
|
|
SELECT * FROM v1;
|
|
|
|
SELECT a FROM v1;
|
|
|
|
INSERT INTO t1 VALUES (44, "greptimedb", 4);
|
|
|
|
SELECT * FROM v1;
|
|
|
|
SHOW CREATE VIEW v1;
|
|
|
|
CREATE OR REPLACE VIEW v1 AS SELECT a, b, c FROM t1 WHERE a > 43;
|
|
|
|
SHOW CREATE VIEW v1;
|
|
|
|
SELECT * FROM v1;
|
|
|
|
--- if not exists, so it doesn't change at all ---
|
|
CREATE VIEW IF NOT EXISTS v1 AS SELECT c FROM t1;
|
|
|
|
SHOW CREATE VIEW v1;
|
|
|
|
SELECT * FROM v1;
|
|
|
|
--- if not exists with replace, so it changes ---
|
|
CREATE OR REPLACE VIEW IF NOT EXISTS v1 AS SELECT c FROM t1;
|
|
|
|
SHOW CREATE VIEW v1;
|
|
|
|
SELECT * FROM v1;
|
|
|
|
|
|
USE public;
|
|
|
|
DROP DATABASE schema_for_view_test;
|