복붙노트

[SQL] 고유 값의 발생을 카운트

SQL

고유 값의 발생을 카운트

나는 특정 필드에 고유 한 값을 찾아 그 값의 발생 수를 계산 한 후 계산으로 결과를 정렬하는 MySQL의 쿼리를 찾기 위해 노력하고있다.

예를 들어 DB

id         name
-----      ------
1          Mark
2          Mike
3          Paul
4          Mike
5          Mike
6          John
7          Mark

예상 결과

name       count
-----      -----
Mike       3
Mark       2
Paul       1
John       1

해결법

  1. ==============================

    1.

    SELECT name,COUNT(*) as count 
    FROM tablename 
    GROUP BY name 
    ORDER BY count DESC;
    
  2. ==============================

    2.이런 일에 대해 무엇 :

    이런 일에 대해 무엇 :

    SELECT
      name,
      count(*) AS num
    FROM
      your_table
    GROUP BY
      name
    ORDER BY
      count(*)
      DESC
    

    당신은 이름이 나타나는 횟수를 선택하지만, 각각의 이름을 한 번만 선택되도록 이름으로 그룹화되어 있습니다.

    마지막으로, 당신은 가장 자주 나타나는 사용자가 먼저 와야 가지고 내림차순 시간,의 숫자로 주문한다.

  3. ==============================

    3.그냥 성능 향상을 위해 (1) COUNT하는 황색의 COUNT (*)를 변경했습니다.

    그냥 성능 향상을 위해 (1) COUNT하는 황색의 COUNT (*)를 변경했습니다.

    SELECT name, COUNT(1) as count 
    FROM tablename 
    GROUP BY name 
    ORDER BY count DESC;
    
  4. from https://stackoverflow.com/questions/1346345/count-the-occurrences-of-distinct-values by cc-by-sa and MIT license