쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

SELECT 목록

포커스 모드
SELECT 목록 - Amazon Redshift

SELECT 목록은 쿼리에서 반환하도록 하려는 열, 함수 및 표현식의 이름을 지정합니다. 목록은 쿼리의 출력을 나타냅니다.

SQL 함수에 대한 자세한 내용은 SQL 함수 참조 섹션을 참조하세요. 표현식에 대한 자세한 내용은 조건식 섹션을 참조하세요.

구문

SELECT [ TOP number ] [ ALL | DISTINCT ] * | expression [ AS column_alias ] [, ...]

파라미터

TOP number

TOP은 양의 정수를 인수로 취해 클라이언트로 반환되는 행의 수를 한정합니다. TOP 절을 이용한 동작은 LIMIT 절을 이용한 동작과 같습니다. 반환되는 행 수는 고정되지만 행 집합은 그렇지 않습니다. 일관된 행 집합을 반환하려면 ORDER BY 절과 함께 TOP 또는 LIMIT를 사용하십시오.

ALL

DISTINCT를 지정하지 않을 경우의 기본 동작을 정의하는 중복 키워드입니다. SELECT ALL *SELECT *와 동일한 의미입니다(즉, 모든 열에 대해 모든 행을 선택하고 중복 항목을 유지함).

DISTINCT

하나 이상의 열에서 일치하는 값을 바탕으로 결과 집합에서 중복된 행을 제거하는 옵션입니다.

참고

애플리케이션이 잘못된 외래 키 또는 프라이머리 키를 허용하는 경우에는 쿼리가 잘못된 결과를 반환할 수 있습니다. 예를 들어 SELECT DISTINCT 쿼리는 프라이머리 키 열이 고유한 값만을 포함하지 않을 경우 중복 행을 반환할 수도 있습니다. 자세한 내용은 테이블 제약 조건 정의 단원을 참조하세요.

*(별표)

테이블의 전체 내용(모든 열과 모든 행)을 반환합니다.

expression

쿼리에서 참조하는 테이블에 존재하는 하나 이상의 열에서 형성되는 표현식입니다. 표현식은 SQL 함수를 포함할 수 있습니다. 예:

avg(datediff(day, listtime, saletime))
AS column_alias

최종 결과 집합에 사용될 열의 임시 이름입니다. AS 키워드는 옵션입니다. 예:

avg(datediff(day, listtime, saletime)) as avgwait

표현식에 대해 단순한 열 이름이 아닌 별칭을 지정하지 않을 경우 결과 집합은 그 열에 기본 이름을 적용합니다.

참고

별칭은 대상 목록에 정의되는 즉시 인식됩니다. 동일한 대상 목록에서 별칭 뒤에 정의된 다른 표현식에 별칭을 사용할 수 있습니다. 다음 예는 이를 보여 줍니다.

select clicks / impressions as probability, round(100 * probability, 1) as percentage from raw_data;

측방 별칭 참조를 사용하면 동일한 대상 목록에서 더 복잡한 표현식을 작성할 때 별칭 처리된 표현식을 반복할 필요가 없다는 이점이 있습니다. Amazon Redshift에서는 이런 형식의 참조를 구문 분석할 때 이전에 정의된 별칭을 일렬로 정렬합니다. FROM 절에 이전에 별칭 처리된 표현식과 동일한 이름을 가진 열이 정의되어 있는 경우 FROM 절의 열에 우선 순위가 적용됩니다. 예를 들어 위의 쿼리에서 raw_data 테이블에 'probability' 열이 있는 경우 대상 목록의 두 번째 표현식에 있는 'probability'는 별칭 이름 'probability' 대신 이 열을 나타냅니다.

사용 노트

TOP은 SQL 확장으로, LIMIT 동작에 대한 대안을 제공합니다. 같은 쿼리에 TOP과 LIMIT를 사용할 수 없습니다.

예시

다음 예에서는 SALES 테이블의 행 10개를 반환합니다. 쿼리는 TOP 절을 사용하지만 ORDER BY 절이 지정되지 않았으므로, 여전히 예측할 수 없는 행 집합을 반환합니다.

select top 10 * from sales;

다음 쿼리는 기능적으로는 동일하지만 TOP 절 대신 LIMIT 절을 사용합니다.

select * from sales limit 10;

다음 예에서는 TOP 절을 사용하여 SALES 테이블에서 최초 10개의 행을 반환하며, QTYSOLD 열을 기준으로 내림차순으로 정렬합니다.

select top 10 qtysold, sellerid from sales order by qtysold desc, sellerid; qtysold | sellerid --------+---------- 8 | 518 8 | 520 8 | 574 8 | 718 8 | 868 8 | 2663 8 | 3396 8 | 3726 8 | 5250 8 | 6216 (10 rows)

다음 예에서는 QTYSOLD 열을 기준으로 정렬된 SALES 테이블에서 최초 2개의 QTYSOLD 및 SELLERID 값을 반환합니다.

select top 2 qtysold, sellerid from sales order by qtysold desc, sellerid; qtysold | sellerid --------+---------- 8 | 518 8 | 520 (2 rows)

다음 예에서는 CATEGORY 테이블의 개별 범주 그룹 목록을 확인할 수 있습니다.

select distinct catgroup from category order by 1; catgroup ---------- Concerts Shows Sports (3 rows) --the same query, run without distinct select catgroup from category order by 1; catgroup ---------- Concerts Concerts Concerts Shows Shows Shows Sports Sports Sports Sports Sports (11 rows)

다음 예에서는 2008년 12월의 고유한 주 번호 집합을 반환합니다. DISTINCT 절을 사용하지 않으면 문은 행 31개를 반환하거나 해당 월의 날짜별로 행을 하나씩 반환합니다.

select distinct week, month, year from date where month='DEC' and year=2008 order by 1, 2, 3; week | month | year -----+-------+------ 49 | DEC | 2008 50 | DEC | 2008 51 | DEC | 2008 52 | DEC | 2008 53 | DEC | 2008 (5 rows)

이 페이지에서

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.