이 글은 MYSQL에서의 뷰 사용법(코드 예제)을 소개합니다. 필요한 친구들이 참고할 수 있기를 바랍니다.
1. 뷰란 무엇인가요
SQL을 실행하고 결과 집합을 가상 테이블에 저장합니다
(관련 권장 사항: MySQL 튜토리얼)
2. 뷰를 사용하는 이유
명령문
SQL 쿼리를 단순화하고 데이터를 빠르게 검색
테이블의 부분 구조만 알고
데이터를 보호하고, 특정 인증에 따라 데이터 형식과 표현을 변경
, 뷰는 return 및 기본 테이블은 데이터를 다르게 표현하고 형식을 지정합니다.
Notes
• 뷰가 생성된 후에는 기본적으로 테이블과 동일하게 사용할 수 있습니다. (쿼리, 필터링, 데이터 정렬, 다른 뷰와 연결 또는 연결(추가, 업데이트))
• 뷰는 다른 곳에 저장된 데이터를 보기 위한 기능에만 사용되며, 반환된 데이터는 다른 테이블에서도 검색됩니다.
• 뷰 자체에는 데이터가 포함되어 있지 않으므로 여러 테이블 조인을 인덱싱하거나 중첩하면 성능 문제가 발생할 수 있으므로 테스트가 필요합니다
3. 규칙 및 제한 사항
테이블 이름은 다른 뷰 및 테이블과 함께 고유해야 합니다. )
뷰 생성에는 제한이 없습니다
충분한 권한
뷰는 중첩될 수 있고 다른 뷰에서 쿼리하여 뷰를 구성할 수 있습니다
뷰와 쿼리가 모두 뷰의 순서는 덮어쓰기됩니다
뷰는 색인화할 수 없습니다
뷰는 테이블과 함께 사용할 수 있습니다
4 뷰를 사용하여
create view
뷰를 생성하는 문을 봅니다. Show create view viewname
Delete view drop viewname
Update view, 1⃣️ 먼저 Drop한 후 2⃣️ 생성 or create view 직접 사용
뷰를 사용하여 복잡한 조인 쿼리 단순화
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 중국어 웹사이트의 기타 관련 기사를 참조하세요!