SQL VIEW£¨ÊÓͼ£©

ÊÓͼÊÇ¿ÉÊÓ»¯µÄ±í¡£

±¾Õ½²½âÈçºÎ´´½¨¡¢¸üкÍɾ³ýÊÓͼ¡£

SQL CREATE VIEW Óï¾ä

ʲôÊÇÊÓͼ£¿

ÔÚ SQL ÖУ¬ÊÓͼÊÇ»ùÓÚ SQL Óï¾äµÄ½á¹û¼¯µÄ¿ÉÊÓ»¯µÄ±í¡£

ÊÓͼ°üº¬ÐкÍÁУ¬¾ÍÏñÒ»¸öÕæÊµµÄ±í¡£ÊÓͼÖеÄ×ֶξÍÊÇÀ´×ÔÒ»¸ö»ò¶à¸öÊý¾Ý¿âÖеÄÕæÊµµÄ±íÖеÄ×ֶΡ£ÎÒÃÇ¿ÉÒÔÏòÊÓͼÌí¼Ó SQL º¯Êý¡¢WHERE ÒÔ¼° JOIN Óï¾ä£¬ÎÒÃÇÒ²¿ÉÒÔÌá½»Êý¾Ý£¬¾ÍÏñÕâЩÀ´×ÔÓÚij¸öµ¥Ò»µÄ±í¡£

×¢ÊÍ£ºÊý¾Ý¿âµÄÉè¼ÆºÍ½á¹¹²»»áÊܵ½ÊÓͼÖеĺ¯Êý¡¢where »ò join Óï¾äµÄÓ°Ïì¡£

SQL CREATE VIEW Óï·¨

CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

×¢ÊÍ£ºÊÓͼ×ÜÊÇÏÔʾ×î½üµÄÊý¾Ý¡£Ã¿µ±Óû§²éѯÊÓͼʱ£¬Êý¾Ý¿âÒýÇæÍ¨¹ýʹÓà SQL Óï¾äÀ´Öؽ¨Êý¾Ý¡£

SQL CREATE VIEW ʵÀý

¿ÉÒÔ´Óij¸ö²éѯÄÚ²¿¡¢Ä³¸ö´æ´¢¹ý³ÌÄÚ²¿£¬»òÕß´ÓÁíÒ»¸öÊÓͼÄÚ²¿À´Ê¹ÓÃÊÓͼ¡£Í¨¹ýÏòÊÓͼÌí¼Óº¯Êý¡¢join µÈµÈ£¬ÎÒÃÇ¿ÉÒÔÏòÓû§¾«È·µØÌá½»ÎÒÃÇÏ£ÍûÌá½»µÄÊý¾Ý¡£

Ñù±¾Êý¾Ý¿â Northwind ÓµÓÐһЩ±»Ä¬Èϰ²×°µÄÊÓͼ¡£ÊÓͼ "Current Product List" »á´Ó Products ±íÁгöËùÓÐÕýÔÚʹÓõIJúÆ·¡£Õâ¸öÊÓͼʹÓÃÏÂÁÐ 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 Äêÿ¸öÖÖÀàµÄÏúÊÛ×ÜÊý¡£Çë×¢Ò⣬Õâ¸öÊÓͼ»á´ÓÁíÒ»¸öÃûΪ "Product Sales for 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 CREATE OR REPLACE VIEW Syntax
CREATE OR REPLACE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

ÏÖÔÚ£¬ÎÒÃÇÏ£ÍûÏò "Current Product List" ÊÓͼÌí¼Ó "Category" ÁС£ÎÒÃǽ«Í¨¹ýÏÂÁÐ SQL ¸üÐÂÊÓͼ£º

CREATE VIEW [Current Product List] AS
SELECT ProductID,ProductName,Category
FROM Products
WHERE Discontinued=No

SQL ³·ÏúÊÓͼ

Äú¿ÉÒÔͨ¹ý DROP VIEW ÃüÁîÀ´É¾³ýÊÓͼ¡£

SQL DROP VIEW Syntax
DROP VIEW view_name
VUE