SQL

SQL에서 ORDER BY, LIMIT, DISTINCT, GROUP BY, HAVING 종합 익히기

DSDiary 2023. 6. 23. 13:15
728x90
반응형
SMALL

 

안녕하세요! 데이터베이스 세계에서 SQL(Structured Query Language)은 데이터 관리를 위한 기본 언어입니다. SQL은 데이터베이스에서 데이터를 조작하고 추출하기 위한 다양한 툴 및 명령 세트를 제공합니다. 이 중 ORDER BY, LIMIT, DISTINCT, GROUP BY, HAVING은 모든 SQL 개발자가 친숙해야 하는 기본 명령입니다. 그래서 오늘은~ 이러한 명령을 자세히 살펴보고 이를 효과적으로 사용하여 데이터베이서의 데이터를 정렬, 필터링 및 집계하고 데이터 분석 기능을 향상시키는 방법을 살펴보겠습니다.

 

 

 

 

ORDER BY

 

ORDER BY는 하나 이사으이 열을 기준을 SQL 쿼리 결과를 정렬하는 데 사용됩니다. 오름차순(ASC) 또는 내림차순(DESC)으로 데이터를 표시할 순서를 지정할 수 있습니다. 예를 들어 직원 테이블이 있고 급여를 기준으로 내림차순으로 정렬된 직원 목록을 검색하려는 경우 다음 SQL 쿼리를 사용할 수 있습니다.

SELECT * FROM employees
ORDER BY salary DESC;
 

 

 

 

 

LIMIT

 

LIMIT는 SQL 쿼리에서 반환되는 행 수를 제한하는 데 사용됩니다. 큰 테이블의 데이터 하위 집합만 필요할 때 특히 유용합니다. 검색할 행 수와 특정 수의 행을 건너뛰기 위한 선택적 오프셋을 지정할 수 있습니다. 예를 들어 테이블에서 처음 10명의 직원을 검색하려는 경우 다음 SQL 쿼리를 사용할 수 있습니다.

SELECT * FROM semplyees
LIMIT 10;
 

 

 

 

 

DISTINCT

 

DISTINCT는 SQL 쿼리 결과에서 중복 행을 제거하는 데 사용됩니다. 특정 열 또는 열 조합에서 고유한 값만 검색할 수 있습니다. 예를 들어 고객 테이블이 있고 고객이 위치한 고유한 국가 목록을 검색하려는 경우 다음 SQL 쿼리를 사용할 수 있습니다.

SELECT DISTINCT country FROM customers;
 

 

 

 

 

GROUP BY

 

GROUP BY는 하나 이상의 열을 기반으로 SQL 쿼리의 행을 그룹화하는 데 사용됩니다. 그룹화된 데이터에 대한 계산을 수행하기 위해 COUNT, SUM, AVG, MIN, MAX 등과 같은 집계 함수와 함께 자주 사용됩니다. 예를 들어 주문 테이블이 있고 각 고객의 총 수익을 계산하려는 경우 다음 SQL 쿼리를 사용할 수 있습니다.

SELECT customer_id, SUM(total_revenue) as total_revenue
FROM orders
GROUP BY customer_id;
 

 

 

 

 

HAVING

 

HAVING은 GROUP BY와 함께 사용되는 COUNT, SUM, AVG, MIN, MAX 등과 같은 집계 함수의 결과를 기반으로 SQL 쿼리 결과를 필터링하는 데 사용됩니다.. 집계된 데이터에 대한 조건을 지정할 수 있습니다. 예를 들어 주문이 10건 이상이고 총 수익이 1000원 보다 큰 고객을 검색하려는 경우 다음 SQL 쿼리를 사용할 수 있습니다.

SELECT customer_id, COUNT(*) as total_orders, SUM(total_revenue) as total_revenue
FROM orders
GROUP BY customer_id
HAVING total_orders > 10 AND total_revenue > 1000;
 
 

 

 

 

 

이러한 명령들을 숙지하면 데이터베이스에서 데이터를 효율적으로 검색하고 조작하여 가치 있는 인사이트를 추출하고 정보에 입각한 의사결정을 내릴 수 있습니다~

 

 

 

 

 

728x90
반응형
LIST