>  기사  >  데이터 베이스  >  MYSQL의 뷰 사용법 소개(코드 예)

MYSQL의 뷰 사용법 소개(코드 예)

不言
不言앞으로
2019-02-27 13:51:382937검색

이 글은 MYSQL에서의 뷰 사용법(코드 예제)을 소개합니다. 필요한 친구들이 참고할 수 있기를 바랍니다.

1. 뷰란 무엇인가요

SQL을 실행하고 결과 집합을 가상 테이블에 저장합니다

(관련 권장 사항: MySQL 튜토리얼)

2. 뷰를 사용하는 이유

  1. 명령문

  2. SQL 쿼리를 단순화하고 데이터를 빠르게 검색

  3. 테이블의 부분 구조만 알고

  4. 데이터를 보호하고, 특정 인증에 따라 데이터 형식과 표현을 변경

  5. , 뷰는 return 및 기본 테이블은 데이터를 다르게 표현하고 형식을 지정합니다.

Notes
• 뷰가 생성된 후에는 기본적으로 테이블과 동일하게 사용할 수 있습니다. (쿼리, 필터링, 데이터 정렬, 다른 뷰와 연결 또는 연결(추가, 업데이트))
• 뷰는 다른 곳에 저장된 데이터를 보기 위한 기능에만 사용되며, 반환된 데이터는 다른 테이블에서도 검색됩니다.
• 뷰 자체에는 데이터가 포함되어 있지 않으므로 여러 테이블 조인을 인덱싱하거나 중첩하면 성능 문제가 발생할 수 있으므로 테스트가 필요합니다

3. 규칙 및 제한 사항

  1. 테이블 이름은 다른 뷰 및 테이블과 함께 고유해야 합니다. )

  2. 뷰 생성에는 제한이 없습니다

  3. 충분한 권한

  4. 뷰는 중첩될 수 있고 다른 뷰에서 쿼리하여 뷰를 구성할 수 있습니다

  5. 뷰와 쿼리가 모두 뷰의 순서는 덮어쓰기됩니다

  6. 뷰는 색인화할 수 없습니다

  7. 뷰는 테이블과 함께 사용할 수 있습니다

4 뷰를 사용하여

  1. create view

  2. 뷰를 생성하는 문을 봅니다. Show create view viewname

  3. Delete view drop viewname

  4. Update view, 1⃣️ 먼저 Drop한 후 2⃣️ 생성 or create view 직접 사용

  5. 뷰를 사용하여 복잡한 조인 쿼리 단순화

5 . 뷰를 사용하여 복잡한 조인 쿼리를 단순화하세요

뷰 만들기

CREATE VIEW productcustomers AS
SELECT cust_name, cust_contact, prod_id
FROM customers, orders, orderitems
WHERE customers.cust_id = orders.cust_id
AND   orderitems.order_num = orders.order_num

뷰 사용

SELECT cust_name, cust_contact
FROM productcustomers
WHERE prod_id = 'TNT2';

6. 뷰를 사용하여 검색된 데이터 형식을 다시 지정하세요

select concat (rtrim(vend_name) , '(',rtrim(vend_country),')') as vend_title   from vendors order by vend_name;

이 형식을 자주 사용하면 A를 만들 수 있습니다. view

CREATE VIEW vendorlocations AS
SELECT
    concat ( rtrim( vend_name ), '(', rtrim( vend_country ), ')' ) AS vend_title 
FROM
    vendors 
ORDER BY
    vend_name;

는 view

SELECT * FROM vendorlocations;

7를 통해 결과를 직접 쿼리할 수 있습니다. 7. 뷰를 사용하여 원하지 않는 데이터를 필터링하세요

create view custmeremaillist AS
SELECT cust_id ,cust_name,cust_email
from customers
where cust_email is not NULL;

뷰를 직접 사용하세요

SELECT * from custmeremaillist ;

8. 뷰 및 계산된 필드를 사용하세요

mysql 쿼리

SELECT
    prod_id,
    quantity,
    item_price,
    quantity * item_price AS expanded_price 
FROM
    orderitems
WHERE order_num=20005;

뷰 만들기

CREATE VIEW orderitemsexpanded AS
SELECT
    order_num,
    prod_id,
    quantity,
    item_price,
    quantity * item_price AS expanded_price 
FROM
    orderitems
WHERE order_num=20005;

뷰 사용

SELECT
    *
FROM
    orderitemsexpanded
WHERE order_num=20005;

9. 뷰 업데이트

보통 뷰는 업데이트(삽입, 업데이트, 삭제)가 가능합니다. 뷰를 업데이트하면 기본 테이블이 업데이트됩니다. 다음 정의가 있는 경우 뷰를 업데이트할 수 없습니다.

1. 分组(group by 和 having)
2. 联结
3. 自查询
4. 并
5. 聚合函数(min()、count()、sum()等)
6. Distinct
7. 导出(计算)列

그래서 뷰는 선택 쿼리를 직접 사용하는 것이 가장 좋습니다.


위 내용은 MYSQL의 뷰 사용법 소개(코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제