SQL 테이블의 주어진 열에서 가장 빈번한 값을 어떻게 찾을 수 있습니까?
예를 들어,이 테이블의 경우 two
가장 빈번한 값이므로 반환해야 합니다.
one
two
two
three
답변
SELECT `column`,
COUNT(`column`) AS `value_occurrence`
FROM `my_table`
GROUP BY `column`
ORDER BY `value_occurrence` DESC
LIMIT 1;
교체 column
및 my_table
. 열의 가장 일반적인 값 1
을 보려면 늘리십시오 N
.
답변
다음과 같이 시도하십시오.
SELECT `column`
FROM `your_table`
GROUP BY `column`
ORDER BY COUNT(*) DESC
LIMIT 1;
답변
테이블 이름을로 tblperson
, 열 이름을 city
. 도시 열에서 가장 많이 반복되는 도시를 검색하고 싶습니다.
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)
다음 nor
은 별칭 이름입니다.
답변
아래 쿼리는 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
..
..
답변
SQL Server와 함께 사용합니다.
제한 명령 지원이 없기 때문에.
이 경우 상위 1 명령을 사용하여 특정 열에서 발생하는 최대 값을 찾을 수 있습니다 (값).
SELECT top1
`value`,
COUNT(`value`) AS `value_occurrence`
FROM
`my_table`
GROUP BY
`value`
ORDER BY
`value_occurrence` DESC;
답변
테이블이 ‘ SalesLT.Customer
‘이고 알아 내려는 열이 ‘ CompanyName
‘이고 AggCompanyName
별칭이라고 가정합니다.
Select CompanyName, Count(CompanyName) as AggCompanyName from SalesLT.Customer
group by CompanyName
Order By Count(CompanyName) Desc;
답변
LIMIT를 사용할 수 없거나 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