Files
greptimedb/tests/cases/standalone/common/view/show_create.sql
dennis zhuang 33ed745049 feat: show create view and creating view with columns (#4086)
* 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>
2024-07-09 18:35:11 +00:00

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;