มุมมอง MySQL
MySQL สร้างคำชี้แจงการดู
ใน SQL มุมมองคือตารางเสมือนตามชุดผลลัพธ์ของคำสั่ง SQL
มุมมองประกอบด้วยแถวและคอลัมน์ เช่นเดียวกับตารางจริง เขตข้อมูลในมุมมองคือเขตข้อมูลจากตารางจริงอย่างน้อยหนึ่งตารางในฐานข้อมูล
คุณสามารถเพิ่มคำสั่ง SQL และฟังก์ชันในมุมมองและนำเสนอข้อมูลราวกับว่าข้อมูลมาจากตารางเดียว
มุมมองถูกสร้างขึ้นด้วยCREATE VIEW
คำสั่ง
สร้างมุมมองไวยากรณ์
CREATE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;
หมายเหตุ:มุมมองจะแสดงข้อมูลที่เป็นปัจจุบันเสมอ! กลไกจัดการฐานข้อมูลจะสร้างมุมมองขึ้นใหม่ ทุกครั้งที่ผู้ใช้สอบถามข้อมูล
MySQL สร้างมุมมองตัวอย่าง
SQL ต่อไปนี้สร้างมุมมองที่แสดงลูกค้าทั้งหมดจากบราซิล:
ตัวอย่าง
CREATE VIEW [Brazil Customers] AS
SELECT CustomerName, ContactName
FROM Customers
WHERE Country = 'Brazil';
เราสามารถสอบถามมุมมองด้านบนได้ดังนี้:
ตัวอย่าง
SELECT * FROM [Brazil Customers];
SQL ต่อไปนี้จะสร้างมุมมองที่เลือกทุกผลิตภัณฑ์ในตาราง "ผลิตภัณฑ์" ด้วยราคาที่สูงกว่าราคาเฉลี่ย:
ตัวอย่าง
CREATE VIEW [Products Above Average Price] AS
SELECT ProductName, Price
FROM Products
WHERE Price > (SELECT AVG(Price) FROM Products);
เราสามารถสอบถามมุมมองด้านบนได้ดังนี้:
ตัวอย่าง
SELECT * FROM [Products Above Average Price];
MySQL กำลังอัปเดตมุมมอง
มุมมองสามารถปรับปรุงด้วยCREATE OR REPLACE VIEW
คำสั่ง
สร้างหรือแทนที่ VIEW Syntax
CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;
SQL ต่อไปนี้จะเพิ่มคอลัมน์ "เมือง" ลงในมุมมอง "ลูกค้าชาวบราซิล":
ตัวอย่าง
CREATE OR REPLACE VIEW [Brazil Customers] AS
SELECT CustomerName, ContactName, City
FROM Customers
WHERE Country = 'Brazil';
MySQL ลดมุมมอง
มุมมองจะถูกลบออกพร้อมกับDROP VIEW
คำสั่ง
DROP VIEW ไวยากรณ์
DROP VIEW view_name;
SQL ต่อไปนี้จะลดมุมมอง "ลูกค้าบราซิล":
ตัวอย่าง
DROP VIEW [Brazil Customers];