>백엔드 개발 >PHP 튜토리얼 >SQL VIEW(뷰) 관련 지식 설명

SQL VIEW(뷰) 관련 지식 설명

jacklove
jacklove원래의
2018-05-08 11:21:361987검색

Views는 시각적 테이블입니다. 이 장에서는 보기를 생성, 업데이트 및 삭제하는 방법에 대해 설명합니다. 이에 대해서는 이 문서에서 설명하겠습니다.

SQL CREATE VIEW 문

뷰란 무엇인가요?

SQL에서 뷰는 SQL 문의 결과 집합을 기반으로 하는 시각적 테이블입니다.

뷰에는 실제 테이블과 마찬가지로 행과 열이 포함됩니다. 뷰의 필드는 하나 이상의 데이터베이스에 있는 실제 테이블의 필드입니다. SQL 함수, WHERE 및 JOIN 문을 뷰에 추가할 수 있으며 데이터가 단일 테이블에서 나온 것처럼 제출할 수 있습니다.

참고: 데이터베이스의 디자인과 구조는 뷰의 where 또는 Join 문과 같은 기능의 영향을 받지 않습니다.

SQL CREATE VIEW 구문

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

참고: 뷰에는 항상 최신 데이터가 표시됩니다. 사용자가 뷰를 쿼리할 때마다 데이터베이스 엔진은 SQL 문을 사용하여 데이터를 재구성합니다.

SQL CREATE VIEW 인스턴스

는 쿼리 내, 저장 프로시저 또는 다른 뷰 내에서 뷰를 사용할 수 있습니다. 함수, 조인 등을 뷰에 추가하면 원하는 데이터를 사용자에게 정확하게 제출할 수 있습니다.

샘플 데이터베이스 Northwind에는 기본적으로 일부 뷰가 설치되어 있습니다. "Current 제품 목록" 보기에는 제품 테이블에서 사용 중인 모든 제품이 나열됩니다. 이 뷰는 다음 SQL을 사용하여 생성됩니다.

CREATE VIEW [Current Product List] ASSELECT ProductID,ProductNameFROM ProductsWHERE Discontinued=No

위 뷰를 쿼리할 수 있습니다.

SELECT * FROM [Current Product List]

Northwind 샘플 데이터베이스의 또 다른 뷰는 제품 테이블에서 단가가 평균 단가보다 높은 모든 제품을 선택합니다.

CREATE VIEW [Products Above Average Price] ASSELECT ProductName,UnitPriceFROM ProductsWHERE UnitPrice>(SELECT AVG(UnitPrice) FROM Products)

다음과 같이 보일 수 있습니다. 위 뷰를 쿼리합니다.

SELECT * FROM [Products Above Average Price]

Northwind 데이터베이스의 또 다른 뷰 인스턴스는 1997년 각 카테고리의 총 매출을 계산합니다. 이 뷰는 "1997년 제품 판매"라는 다른 뷰의 데이터를 선택합니다.

CREATE VIEW [Category Sales For 1997] ASSELECT 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 Update View

다음 구문을 사용하여 뷰를 업데이트할 수 있습니다.

SQL CREATE OR REPLACE VIEW Syntax
CREATE OR REPLACE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

이제 "Category"를 "현재 제품 목록" 보기 목록. 다음 SQL을 통해 뷰를 업데이트하겠습니다.

CREATE VIEW [Current Product List] ASSELECT ProductID,ProductName,CategoryFROM ProductsWHERE Discontinued=No

이 글에서는 SQL VIEW(뷰) 관련 지식 포인트를 설명하고 있으니, 더 많은 학습자료를 보시려면 php 중국어 홈페이지를 참고해주세요.

관련 권장 사항:

SQL AUTO INCREMENT 필드에 대한 설명

SQL ALTER TABLE 문의 관련 작업 정보

SQL 실행 취소 인덱스, 테이블 및 데이터베이스에 대한 관련 지식

위 내용은 SQL VIEW(뷰) 관련 지식 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.