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,ProductNameFROM
ProductsWHERE
Discontinued=No
ÎÒÃÇ¿ÉÒÔ²éѯÉÏÃæÕâ¸öÊÓͼ£º
SELECT * FROM [Current Product List]
Northwind Ñù±¾Êý¾Ý¿âµÄÁíÒ»¸öÊÓͼ»áѡȡ Products ±íÖÐËùÓе¥Î»¼Û¸ñ¸ßÓÚÆ½¾ùµ¥Î»¼Û¸ñµÄ²úÆ·£º
CREATE VIEW
[Products Above Average Price]AS
SELECT
ProductName,UnitPriceFROM
ProductsWHERE
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
CategorySalesFROM
[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