View 可以縮短 SQL 撰寫的長度,只是做個類似轉換的動作,後面該做的還是跑不掉的。
不過若有新舊版程式,例如要將這個 Table Name 加上「年月」,但是原始 Table 暫時還要可以讀取,就可以靠 View 來達成。
MySQL 建立 View 的語法 與 簡易應用
Create View 文件與語法
- MySQL 官方文件:MySQL 8.0 Reference Manual :: 13.1.23 CREATE VIEW Statement
- CREATE VIEW [db_name.]view_name [(column_list)] AS
select-statement; - 範例:
CREATE VIEW transactions AS
SELECT id_number, name, transaction_date FROM customers;
- CREATE VIEW [db_name.]view_name [(column_list)] AS
想將 Table Name 加上「年月」,會需要 RENAME Table,然後再加上一個 View 來取代原始 Table,讓其它程式還可以讀取,要怎麼做呢?
步驟如下:
- RENAME Table (加上年月)
- RENAME TABLE table_name TO table_name_202201;
- 建立 VIEW (取代原始 Table name)
- CREATE VIEW table_name_202201 AS SELECT * FROM table_name;
- 若一次想要把兩個都撈進來 (不過這個速度很慢)
- CREATE VIEW table_name AS SELECT * FROM table_name_202201 UNION ALL SELECT * FROM table_name_202202;
- 程式都已經改完後
- DROP View
- DROP VIEW table_name;