SQL入門チュートリアルマニュ...login
SQL入門チュートリアルマニュアル
著者:php.cn  更新時間:2022-04-12 14:15:40

SQLビュー



ビューは視覚的なテーブルです。

この章では、ビューを作成、更新、削除する方法について説明します。


SQL CREATE VIEW ステートメント

SQL では、ビューは SQL ステートメントの結果セットに基づく視覚的なテーブルです。

ビューには、実際のテーブルと同じように、行と列が含まれています。ビュー内のフィールドは、1 つ以上のデータベース内の実際のテーブルのフィールドです。

SQL 関数、WHERE および JOIN ステートメントをビューに追加し、単一のテーブルからのものであるかのようにデータを表示できます。

SQL CREATE VIEW 構文

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

注: View は常に最新のデータを表示します。ユーザーがビューにクエリを実行するたびに、データベース エンジンはビューの SQL ステートメントを使用してデータを再構築します。


SQL CREATE VIEW の例

サンプル データベース Northwind には、デフォルトでいくつかのビューがインストールされています。

「現在の製品リスト」ビューには、「製品」テーブルのすべてのアクティブな製品 (製造中止されていない製品) がリストされます。このビューは次の SQL を使用して作成されます:

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

上記のビューを次のようにクエリできます:

SELECT * FROM [現在の製品リスト]

Northwind サンプル データベースの別のビューでは、単価が平均単価より高い「製品」テーブル内のすべての製品が選択されます:

CREATE VIEW [平均価格を超える製品] AS
SELECT ProductName,UnitPrice
FROM Products
WHERE UnitPrice>(SELECT AVG(UnitPrice) FROM Products)

上記のビューを次のようにクエリできます:

SELECT * FROM [平均価格を超える製品]

別のビューNorthwind サンプル データベース 1997 年の各カテゴリの総売上高が計算されます。このビューは、「1997 年の製品売上」という名前の別のビューからデータを選択することに注意してください:

CREATE VIEW [1997 年のカテゴリ売上] AS
SELECT DISTINCT categoryName,Sum(ProductSales) A​​S categorySales
FROM [1997 年の製品売上]
GROUP BY CategoryName

上記のビューを次のようにクエリできます:

SELECT * FROM [Category Sales For 1997]

クエリに条件を追加することもできます。ここで、「飲料」カテゴリの総売上高を確認する必要があります:

SELECT * FROM [1997 年のカテゴリ売上高]
WHERE categoryName='飲料'


SQL 更新ビュー

次の構文を使用してビューを更新できます:

SQL CREATE OR REPLACE VIEW 構文

CREATE OR REPLACE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE 条件

次に、「現在の製品リスト」ビューに「カテゴリ」列を追加します。次の SQL を通じてビューを更新します:

CREATE VIEW [現在の製品リスト] AS
SELECT ProductID,ProductName,Category
FROM Products
WHERE Discontinued=No


SQL ビューを中止します

を使用できますDROP VIEW コマンドを使用してビューを削除します。

SQL DROP VIEW 構文

DROP VIEW view_name

PHP中国語ウェブサイト