SQL VIEW (näkymä)
- 上一页 SQL Increment
- 下一页 SQL Date
Näkymät ovat visuaalisia tauluja.
Tämä luku selittää, miten näkymät luodaan, päivitetään ja poistetaan.
SQL CREATE VIEW lause
Mitä näkymä on?
SQL:ssa näkymä on visualisointi SQL-lauseen tuloksista.
Näkymät sisältävät rivejä ja sarakkeita, kuten todellinen taulu. Näkymän kentät ovat todellisia taulujen kenttiä yhdestä tai useammasta tietokannasta. Voimme lisätä SQL-funktioita, WHERE- ja JOIN-lauseita näkymään ja toimittaa tietoja, ikään kuin ne olisivat tulleet yhdestä taulusta.
Huomautus:Tietokannan suunnittelu ja rakenne ei ole vaikuttunut näkymien funktioista, where- tai join-lauseista.
SQL CREATE VIEW syntaksi
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
Huomautus:Näkymät näyttävät aina uusimmat tiedot. Kun käyttäjä kysyy näkymää, tietokantamoottori rebuildaa tiedot käyttämällä SQL-käskyjä.
SQL CREATE VIEW esimerkki
Näkymää voidaan käyttää jossain kyselyssä, jossain tallennetussa menettelyssä tai toisessa näkymässä. Voimme toimittaa käyttäjille tarkasti haluamamme tiedot lisäämällä funktioita, join ja niin edelleen näkymään.
Northwind-sampelitietokanta sisältää joitakin oletuksella asennettuja näkymiä. Näkymä "Current Product List" listaa kaikki käytössä olevat tuotteet taulusta Products. Tämä näkymä luodaan seuraavalla SQL-käskyllä:
CREATE VIEW [Current Product List] AS SELECT ProductID,ProductName FROM Products WHERE Discontinued=No
Voimme hakea tästä näkymästä:
SELECT * FROM [Current Product List]
Toinen näkymä Northwind-sampelitietokannasta valitsee kaikki tuotteet, joiden yksikkö hinta on korkeampi kuin keskimääräinen yksikkö hinta tuotteista taulusta 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]
Toinen näkymä Northwind-tietokannasta laskee kaikenlaisille myyntien kokonaismäärän vuonna 1997. Huomaa, että tämä näkymä ottaa tiedot toisesta nimeltään "Product Sales for 1997" näkymästä:
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 语法
DROP VIEW view_name
- 上一页 SQL Increment
- 下一页 SQL Date