SQL-- WITH AS (복잡한 데이터 쿼리 후 필터링 필요)

[용도 및 정의]

질의 구조가 복잡하고 부질의 SQL을 여러 번 재사용하면 중복이 반복 될 때 사용하며 부질 의문을 분리하는 것은 할당 용도로 간주 할 수있다.

ORACLE, SQL SERVER, HIVE 등을 사용할 수 있으며, MYSQL8.0을 최적화 한 후 사용할 수도 있습니다.

【풍모】

사용자의 임시 테이블 스페이스에 저장되고 한 번 분석되고 여러 번 사용됨

가독성을 높이고, 분리하고, 쿼리 효율성을 최적화하는 방법 중 하나

【이루다】

WITH AAA AS
(
    SELECT
        COALESCE(A.student_name,'空') sname,
        COALESCE(B.teacher_name,'空') tname,
    FROM
        Student A 
    JOIN
        Teacher B
    ON
        A.CLASS_ID=B.CLASS_ID
),
CCC AS
(
    SELECT
        count(*)
    FROM
        Student A
    WHERE
        A.sex = '男'
        AND
        A.class_name = '一年级一班'
)
SELECT
    AAA.sname,
    AAA.tname,
    CCC.cname
FROM
    AAA,CCC
    

【노트】

  1. as 및 후속 선택은 SQL로 사용됩니다.
  2. SQL은 하나만 가질 수 있으며 여러 개의 엉덩이는 ","로 구분되며 in의 끝은 ")"입니다.
  3. with는 단독으로 사용하거나 중첩 할 수 없습니다.

기사 참조 위대한 신 링크는 다음과 같습니다.

https://blog.csdn.net/Abysscarry/article/details/81322669?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai 3. 없음

 

추천

출처blog.csdn.net/qq_36766417/article/details/106684462