2.1. DQL

DQL(Data Query Language)은 데이터셋에서 정보를 조회하기 위해 사용하는 SQL의 하위 집합으로 데이터셋에 저장된 데이터를 질의하고 검색 결과를 반환합니다. 데이터 질의어인 DQL은 데이터셋에서 필요한 정보를 추출하는데 필수적인 도구이며, 대표적으로 **SELECT**문이 있습니다.

**SELECT**문은 데이터 조작어인 DML(Data Manipulation Language)로 분류되기도 하고, DQL로 별도로 분류되기도 합니다. Google BigQuery에서는 데이터셋의 관리와 데이터의 조작을 명확하게 분리하고자 하여 **SELECT**문을 DQL로 분류하나, 대부분의 SQL에서는 DML으로 포함시킵니다.

2.1.1. DQL 구성요소

다음은 DQL인 **SELECT**문과 함께 사용되는 기본 구성요소입니다.

쿼리 작성 시 **SELECT**는 데이터를 선택, **FROM**은 데이터를 추출하는 기능을 수행하기 때문에 **SELECT**와 **FROM**은 DQL의 필수 키워드라고 할 수 있습니다.

선택 구성요소인 WHERE, GROUP BY, HAVING, ORDER BY, **LIMIT**은 데이터 필터링, 데이터 결과 갯수 제한 기능으로 조회하고자 하는 데이터를 효과적으로 탐색하여 효율성을 높여줄 수 있습니다.

SELECT                          # 데이터 조회
      column1
    , column2
FROM Table1 AS alias            # 별칭(alias) 지정하여 데이터 추출
WHERE condition1                # 조건(condition1)을 지정하여 데이터 필터링
GROUP BY column[1|2]            # 원하는 컬럼명 그룹화
HAVING condition2               # 필터링 된 데이터 기준으로 조건(condition2) 지정
ORDER BY column[1|2][ASC|DESC]  # 원하는 컬럼명 기준 결과 정렬
LIMIT limiting number;          # 데이터 결과 갯수 제한