ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [SQL] DISTINCT와 GROUP BY 차이
    database 2023. 4. 14. 16:47

    DISTINCT와 GROUP BY는 둘 다 SELECT 쿼리에서 중복된 값을 제거하는 데 사용된다.

    그러나 그들 간에는 중요한 차이점이 있다.

    DISTINCT는 SELECT 쿼리 결과에서 중복된 값을 제거하는 데 사용된다. 즉, 결과 집합에서 중복된 값을 제거하여 반환하는 것이다.

    반면에 GROUP BY는 열 값을 그룹화하고 집계 함수 (SUM, AVG, COUNT 등)를 사용하여 그룹화된 결과를 반환하는 데 사용된다. 즉, 결과 집합을 그룹화하고 그룹화된 데이터의 집계 값을 계산하는 것이다.

     

    아직 잘 이해가 되지 않는다. 

     

    예시 코드와 결과를 보면 쉽게 이해가 가능하다.

     

    아래는 MySQL에서 DISTINCT와 GROUP BY를 사용하는 간단한 예시 코드이다.

     

    예를 들어, 다음과 같은 "customers" 테이블이 있다고 가정해보자.

     

    customer_id customer_name city
    1 John New York
    2 Jane London
    3 David Paris
    4 John Berlin
    5 Jane Sydney

    DISTINCT 사용

    SELECT DISTINCT customer_name FROM customers;

    위 쿼리의 결과는 아래와 같다.

     

    customer_name
    John
    Jane
    David

    GROUP BY 사용

    SELECT customer_name, COUNT(*) FROM customers GROUP BY customer_name;

    위 쿼리의 결과는 아래와 같다.

     

     

    customer_name COUNT(*)
    John 2
    Jane 2
    David 1

     

    이처럼 GROUP BY를 사용하면 고유한 값을 그룹화하고 각 그룹의 집계 값을 계산할 수 있다.

    'database' 카테고리의 다른 글

    [SQL] WHERE과 HAVING의 차이  (0) 2023.04.14
    h2 database  (0) 2023.01.30
    NoSQL과 SQL 차이  (0) 2023.01.30
    릴레이션(테이블)와 entity 차이  (0) 2023.01.30
    Entity  (0) 2023.01.30
Designed by Tistory.