มุมมองที่เป็นตารางเสมือน
ในบทนี้จะแสดงวิธีการสร้างปรับปรุงและลบมุมมอง
SQL คำสั่ง CREATE VIEW
ใน SQL มีมุมมองที่เป็นตารางเสมือนอยู่บนพื้นฐานของผลชุดของคำสั่ง SQL
มุมมองที่มีแถวและคอลัมน์เช่นเดียวกับตารางจริง ฟิลด์ในมุมมองที่มีเขตข้อมูลจากหนึ่งหรือมากกว่าหนึ่งตารางจริงในฐานข้อมูล
คุณสามารถเพิ่มฟังก์ชั่น SQL ที่ไหนและคำสั่ง JOIN เพื่อดูและนำเสนอข้อมูลเป็นหากข้อมูลที่ได้รับมาจากโต๊ะเดียว
สร้างมุมมอง SQL ไวยากรณ์
CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition
Note: มุมมองที่จะแสดงข้อมูลขึ้นไปวันที่! โปรแกรมฐานข้อมูลสร้างข้อมูลโดยใช้คำสั่ง SQL มุมมองของทุกครั้งที่ผู้ใช้แบบสอบถามมุมมอง
SQL CREATE VIEW ตัวอย่าง
ถ้าคุณมีฐานข้อมูล Northwind คุณจะเห็นว่ามันมีมุมมองหลายติดตั้งโดยค่าเริ่มต้น
มุมมองรายการ "สินค้า" รายการผลิตภัณฑ์ที่ใช้งานทั้งหมด (ผลิตภัณฑ์ที่ไม่หยุด) จาก "Products" ตาราง มุมมองที่ถูกสร้างขึ้นด้วย SQL ต่อไปนี้:
CREATE VIEW [Current Product List] AS
SELECT ProductID,ProductName
FROM Products
WHERE Discontinued=No
เราสามารถสอบถามมุมมองข้างต้นดังต่อไปนี้:
SELECT * FROM [Current Product List]
มุมมองในฐานข้อมูลตัวอย่าง Northwind อีกเลือกทุกผลิตภัณฑ์ใน "Products" ตารางที่มีราคาต่อหน่วยสูงกว่าราคาเฉลี่ยต่อหน่วย:
CREATE VIEW [Products Above Average Price] AS
SELECT ProductName,UnitPrice
FROM Products
WHERE UnitPrice>(SELECT AVG(UnitPrice) FROM Products)
เราสามารถสอบถามมุมมองข้างต้นดังต่อไปนี้:
SELECT * FROM [Products Above Average Price]
มุมมองในฐานข้อมูล Northwind อีกคำนวณยอดขายรวมสำหรับแต่ละประเภทในปี 1997 ทราบว่ามุมมองนี้เลือกข้อมูลจากอีกมุมมองหนึ่งที่เรียกว่า "การขายสินค้า 1997":
CREATE VIEW [Category Sales For 1997] AS
SELECT DISTINCT CategoryName,Sum(ProductSales) AS CategorySales
FROM [Product Sales for 1997]
GROUP BY CategoryName
เราสามารถสอบถามมุมมองข้างต้นดังต่อไปนี้:
SELECT * FROM [Category Sales For 1997]
นอกจากนี้เรายังสามารถเพิ่มเงื่อนไขในแบบสอบถาม ตอนนี้เราต้องการที่จะเห็นยอดขายรวมเฉพาะสำหรับหมวดหมู่ "Beverages" :
SELECT * FROM [Category Sales For 1997]
WHERE CategoryName='Beverages'
SQL ดูการอัปเดต
คุณสามารถอัพเดตมุมมองโดยใช้ไวยากรณ์ต่อไปนี้:
SQL สร้างหรือ REPLACE VIEW ไวยากรณ์
CREATE OR REPLACE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition
ตอนนี้เราต้องการที่จะเพิ่ม "Category" คอลัมน์ที่ "ปัจจุบันสินค้ารายการ" มุมมอง เราจะปรับปรุงมุมมองกับ SQL ต่อไปนี้:
CREATE OR REPLACE VIEW [Current Product List] AS
SELECT ProductID,ProductName,Category
FROM Products
WHERE Discontinued=No
SQL หยดดู
คุณสามารถลบมุมมองที่มีคำสั่ง DROP ดู
SQL DROP VIEW ไวยากรณ์
DROP VIEW view_name