mysql5.7 이하 버전에는 "with as" 문이 없지만 mysql8.0 이상 버전에는 "with as" 문이 있습니다. mysql5.7은 이 문을 지원하지 않지만 가능합니다. 임시 테이블을 생성하여 구현합니다. 동일한 효과로 이 명령문은 mysql8.0 이후의 하위 쿼리에도 지원됩니다.
이 튜토리얼의 운영 환경: windows10 시스템, mysql8.0.22 버전, Dell G3 컴퓨터.
mysql에는 with as 문이 있습니까
WITH AS 하위 쿼리 부분 [mysql5.7 이하에서는 지원되지 않고 mysql8.0 및 sqlserver에서는 지원됨]
하위 쿼리 부분의 장점은 부분 쿼리는 세 개의 테이블을 갖는 것이 좋습니다. 하나의 명령문에 연결이 여러 번 나타납니다
단일 하위 쿼리 부분
with a as (select * from Student a inner join Course b ON a.Id=b.StudentId )select * from a
분석: 이 방법으로 이 명령문의 모든 쿼리 a는 학생 및 코스 테이블의 공동 쿼리 세트를 쿼리합니다.
다중 쿼리 부분 구문
with a as (select * from Student), b as (select * from Course) select * from a inner join b on a.Id=b.StudentId
쿼리의 여러 하위 쿼리가 동일한 하위 쿼리의 결과를 사용해야 하는 경우 as를 사용하여 공유 하위 쿼리를 추출하고 별칭을 추가할 수 있습니다. 후속 쿼리문을 직접 사용할 수 있어 다수의 복잡한 SQL문을 최적화하는 데 매우 좋은 역할을 합니다.
참고:
은 임시 테이블과 동일하지만 뷰와 달리 저장되지 않으며 select와 함께 사용해야 합니다.
동일한 선택 앞에 임시 테이블이 여러 개 있을 수 있습니다. with를 작성하고 마지막 with 문에 쉼표를 사용하지 마세요.
With 절은 괄호 안에 넣어야 합니다.
with의 사용법을 요약하면 임시 테이블을 생성하는 것과 비슷합니다.
추천 학습: mysql 비디오 튜토리얼
위 내용은 mysql에는 with as 문이 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!