Overview
Scenarios
Product Architecture
Instance Types
Compatibility Notes
CREATE VIEW statement to create a view.CREATE VIEW customer_order_summary ASSELECTc.c_custkey,c.c_name,c.c_mktsegment,COUNT(o.o_orderkey) AS order_count,COALESCE(SUM(o.o_totalprice), 0) AS total_spentFROM customer cLEFT JOIN orders o ON c.c_custkey = o.o_custkeyGROUP BY c.c_custkey, c.c_name, c.c_mktsegment;
CREATE VIEW regional_suppliers ASSELECTr.r_name AS region_name,n.n_name AS nation_name,s.s_suppkey,s.s_name AS supplier_name,s.s_phoneFROM region rINNER JOIN nation n ON r.r_regionkey = n.n_regionkeyINNER JOIN supplier s ON n.n_nationkey = s.s_nationkey;
SELECT statement just like querying regular tables.SELECT c_name, c_mktsegment, order_count, total_spentFROM customer_order_summaryORDER BY order_count DESCLIMIT 10;
SELECT c_name, order_count, total_spentFROM customer_order_summaryWHERE c_mktsegment = 'BUILDING'AND order_count > 10ORDER BY total_spent DESC;
SELECTrs.region_name,rs.supplier_name,ps.ps_partkey,ps.ps_supplycostFROM regional_suppliers rsINNER JOIN partsupp ps ON rs.s_suppkey = ps.ps_suppkeyWHERE rs.region_name = 'ASIA'ORDER BY ps.ps_supplycostLIMIT 20;
customer_order_summary is queried, the system actually executes its underlying SELECT ... FROM customer LEFT JOIN orders ... statement combined with the outer filter and sorting conditions.CREATE OR REPLACE VIEW statement efficiently without needing to delete and recreate it.CREATE OR REPLACE VIEW customer_order_summary ASSELECTc.c_custkey,c.c_name,c.c_mktsegment,COUNT(o.o_orderkey) AS order_count,COALESCE(SUM(o.o_totalprice), 0) AS total_spent,COALESCE(AVG(o.o_totalprice), 0) AS avg_order_amountFROM customer cLEFT JOIN orders o ON c.c_custkey = o.o_custkeyGROUP BY c.c_custkey, c.c_name, c.c_mktsegment;
DROP VIEW IF EXISTS customer_order_summary;CREATE VIEW customer_order_summary ASSELECT ...;
SHOW CREATE VIEW customer_order_summary\\G
information_schema.views:SELECTTABLE_NAME,VIEW_DEFINITION,CHECK_OPTION,IS_UPDATABLEFROM information_schema.viewsWHERE TABLE_SCHEMA = 'your_database_name'AND TABLE_NAME = 'customer_order_summary'\\G
DROP VIEW statement. It is recommended to include IF EXISTS to prevent errors when the view does not exist.DROP VIEW IF EXISTS customer_order_summary;
DROP VIEW IF EXISTS customer_order_summary, regional_suppliers;
UPDATE/INSERT/DELETE/TRUNCATE write operations are not supported.DROP VIEW/TABLE is supported; ALTER VIEW is not supported.피드백