MySQL 문장 실행 순서 와 작성 순서 실례 분석

selection 구문 전체 문법:

SELECT 
DISTINCT <select_list>
FROM <left_table>
<join_type> JOIN <right_table>
ON <join_condition>
WHERE <where_condition>
GROUP BY <group_by_list>
HAVING <having_condition>
ORDER BY <order_by_condition>
LIMIT <limit_number>
실행 순서:
from →join →on →where →group by→having→select→order by→limit
(1)각 키워드 의 역할:
from:어떤 데이터 시트 에서 데 이 터 를 검색 해 야 합 니까?join 이 있 으 면 FROM 자구 의 앞 두 표 에 피리 칼 적(교차 연결)을 실행 하고 임시 표(n)를 생 성 합 니 다.×줄.
on:상기 임시 표 에 대해 조건 부 선별
왼쪽/오른쪽(join):왼쪽 표 나 오른쪽 표를 보충 하여 완전 하 게 유지 합 니 다.만약 여러 개의 표 와 관련 이 있다 면,중간 표 는 다음 표 에 대해 상기 두 단계 의 조작 을 계속 합 니 다.
where:필터 테이블 의 데이터 조건
  • group by:위 에서 걸 러 낸 데 이 터 를 어떻게 묶 습 니까?
    sum:집합 함수
  • having:위 에 그룹 을 나 눈 데 이 터 를 여과 하 는 조건
  • select:결과 가 집 중 된 어느 열 이나 열의 계산 결 과 를 봅 니 다
  • distinct:
    orderby:어떤 순서 로 되 돌아 오 는 데 이 터 를 봅 니까?
  • limit:조회 결과 반환 수량 제한
  • (2)on 과 where 의 용법 차이:
  • a.on 뒤의 선별 조건 은 주로 관련 표[주 표 의 선택 조건 에 적용 되 지 않 음]를 대상 으로 한다
  • 4
  • b.재 접속 이 끝 난 후에 선별 하려 면 조건 을 where 뒤에 두 어야 합 니 다.관련 표 에 대해 우 리 는 구분 해서 대해 야 한다.조건 부 조회 후 연결 하려 면 검색 어 를 on 뒤에 두 어야 합 니 다
  • c.주 표 에 대한 선별 조건 은 where 뒤에 두 어야 하고 on 뒤에 두 어 서 는 안 된다.
    (3)having 과 where 의 용법 차이:
  • a.having 은 group by 이후 에 만 사용 할 수 있 고 그룹 을 나 눈 후의 결 과 를 선별 할 수 있 습 니 다(즉,having 을 사용 하 는 전제조건 은 그룹 을 나 누 는 것 입 니 다)
  • b.where 는 분명히 group by 이전에,즉 having 전에..c.where 후의 조건 표현 식 에 서 는 집합 함 수 를 사용 할 수 없고,having 는 사용 할 수 있 습 니 다.
    (4)count 용법
    count(열 이름)를 사용 하면 한 열 에 null 값 이 나타 날 때 count(*)는 계산 하지만 count(열 이름)는 계산 하지 않 습 니 다.
    이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

    좋은 웹페이지 즐겨찾기