SQL 2020. 4. 14. 19:21

결과값 일부 조회 (ROWNUM, TOP)

SQL 쿼리 결과 중 상위 몇 개만 보여주는 쿼리

SELECT 컬럼명 1, 컬럼명 2, ... FROM 테이블명 WHERE 조건절 LIMIT 숫자

대표적인 비표준기능 (DBMS 종류마다 다름)

예제

- 국가코드가 'KOR' 인 도시들 중 인구수 많은 순서로 상위 10개만 표시하시오

결과 확인

- SELECT CountryCode FROM city WHERE CountryCode = 'KOR' ORDER BY Population DESC LIMIT 10;

집합함수 (Aggregation Function)

테이블의 전체 레코드를 대상으로 특정 컬럼을 적용해서 한 개의 값을 리턴하는 함수

COUNT(), AVG(), SUM(), MIN(), MAX(), FIRST(), LAST(), ....

     - COUNT()   ->  레코드의 개수를 리턴하는 함수

     - SUM() / AVG()   ->   컬럼값의 합/평균을 리턴

     - MIN() / MAX()   ->   컬럼값의 최소/최대값을 리턴

사용법 : SELECT aggregation_function(컬럼명) FROM 테이블명 WHERE 조건절

예제

- City 테이블에서 국가코드가 'KOR' 인 도시의 수를 표시하시오

- City 테이블에서 국가코드가 'KOR' 인 도시들의 인구수 총합 / 평균을 구하시오

- City 테이블에서 국가코드가 'KOR' 인 도시들의 인구수 중 최대값 / 최소값을 구하시오

결과 확인

- SELECT COUNT(*) FROM city WHERE CountryCode = 'KOR'

- SELECT SUM(Population) FROM city WHERE CountryCode = 'KOR'

- SELECT AVG(Population) FROM city WHERE CountryCode = 'KOR'

- SELECT MIN(Population) FROM city WHERE CountryCode = 'KOR'

- SELECT MAX(Population) FROM city WHERE CountryCode = 'KOR'

유용한 함수들

LENGTH() - 레코드의 문자열 컬럼의 글자수를 리턴한다.

MID() - 문자열의 중간부분을 리턴한다.

UPPER() / LOWER() - 문자열을 대문자/소문자로 리턴한다.

ROUND() - 레코드의 숫자 컬럼값을 반올림

posted by 핵커 커뮤니티
: