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