[SQL] SQL 열에서 가장 자주 값을 찾기
SQLSQL 열에서 가장 자주 값을 찾기
어떻게 SQL 테이블의 지정된 열에서 가장 자주 값을 찾을 수 있습니까?
그것은 가장 빈번한 값이기 때문에, 예를 들면,이 테이블의 두 개의 반환해야 :
one
two
two
three
해결법
-
==============================
1.
SELECT `column`, COUNT(`column`) AS `value_occurrence` FROM `my_table` GROUP BY `column` ORDER BY `value_occurrence` DESC LIMIT 1;
열 및 MY_TABLE를 교체합니다. 당신이 컬럼의 N 가장 일반적인 값을보고 싶다면 1을 늘립니다.
-
==============================
2.같은 것을보십시오 :
같은 것을보십시오 :
SELECT `column` FROM `your_table` GROUP BY `column` ORDER BY COUNT(*) DESC LIMIT 1;
-
==============================
3.우리가 도시로 tblperson 및 열 이름과 테이블 이름을 생각해 보자. 나는 도시 열에서 가장 반복되는 도시를 검색 할 :
우리가 도시로 tblperson 및 열 이름과 테이블 이름을 생각해 보자. 나는 도시 열에서 가장 반복되는 도시를 검색 할 :
select city,count(*) as nor from tblperson group by city having count(*) =(select max(nor) from (select city,count(*) as nor from tblperson group by city) tblperson)
다음이나 별칭 이름입니다.
-
==============================
4.쿼리 아래의 SQL Server 데이터베이스에 저를 위해 일하고 좋은 것 같다 :
쿼리 아래의 SQL Server 데이터베이스에 저를 위해 일하고 좋은 것 같다 :
select column, COUNT(column) AS MOST_FREQUENT from TABLE_NAME GROUP BY column ORDER BY COUNT(column) DESC
결과:
column MOST_FREQUENT item1 highest count item2 second highest item3 third higest .. ..
-
==============================
5.SQL 서버와 함께 사용.
SQL 서버와 함께 사용.
점에서 제한 명령 지원이 없기 때문에.
요 (값)이 경우, 상기 특정 열의 발생 최대 값을 찾기 위해 상위 1 명령을 사용하여
SELECT top1 `value`, COUNT(`value`) AS `value_occurrence` FROM `my_table` GROUP BY `value` ORDER BY `value_occurrence` DESC;
-
==============================
6.표를 가정하면 'SalesLT.Customer'이며 알아 내려고하는 열은 '회사 명'이고 AggCompanyName는 별칭입니다.
표를 가정하면 'SalesLT.Customer'이며 알아 내려고하는 열은 '회사 명'이고 AggCompanyName는 별칭입니다.
Select CompanyName, Count(CompanyName) as AggCompanyName from SalesLT.Customer group by CompanyName Order By Count(CompanyName) Desc;
-
==============================
7.당신은 LIMIT를 사용할 수 없거나 제한 쿼리 도구에 대한 옵션이없는 경우. 당신은 "ROWNUM"를 대신 사용할 수 있지만 하위 쿼리가 필요합니다 :
당신은 LIMIT를 사용할 수 없거나 제한 쿼리 도구에 대한 옵션이없는 경우. 당신은 "ROWNUM"를 대신 사용할 수 있지만 하위 쿼리가 필요합니다 :
SELECT FIELD_1, ALIAS1 FROM(SELECT FIELD_1, COUNT(FIELD_1) ALIAS1 FROM TABLENAME GROUP BY FIELD_1 ORDER BY COUNT(FIELD_1) DESC) WHERE ROWNUM = 1
-
==============================
8.당신은 ID 열이 있고 각 ID에 대한 또 다른 열에서 가장 반복적 인 범주를 찾으려면 다음 쿼리 아래에 사용할 수 있습니다,
당신은 ID 열이 있고 각 ID에 대한 또 다른 열에서 가장 반복적 인 범주를 찾으려면 다음 쿼리 아래에 사용할 수 있습니다,
표:
질문:
SELECT ID, CATEGORY, COUNT(*) AS FREQ FROM TABLE GROUP BY 1,2 QUALIFY ROW_NUMBER() OVER(PARTITION BY ID ORDER BY FREQ DESC) = 1;
결과:
-
==============================
9.내가 사용하고자하는 한 가지 방법은 다음과 같습니다
내가 사용하고자하는 한 가지 방법은 다음과 같습니다
, TABLE_NAME에서 VAR1으로 COUNT ()를 선택
그룹 별
VAR1 내림차순 순서에 의해
제한 1
from https://stackoverflow.com/questions/12235595/find-most-frequent-value-in-sql-column by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 이 쿼리 페이징 (/ 건너 뛰기 걸릴) 기능을 구현 (0) | 2020.04.06 |
---|---|
[SQL] SQL 서버의 이중 어떤 표현? (0) | 2020.04.06 |
[SQL] SQL 서버 : 추출 테이블 메타 데이터 (설명, 필드 및 데이터 유형) (0) | 2020.04.06 |
[SQL] 컬럼 데이터 유형에 BYTE과 CHAR 차이점 (0) | 2020.04.06 |
[SQL] (가) 극적으로 엔티티 프레임 워크의 성능이 열화 () 연산자를 포함하는 이유는 무엇입니까? (0) | 2020.04.06 |