SQL - получить массив данных, упорядоченных по вхождениям - PullRequest
0 голосов
/ 27 января 2011

У меня есть таблица с такими данными в одном из столбцов:

ANS1228E
ANS4987E
ANS1228E
ANS4987E
ANS1228E
ANS4987E
ANS1228E
ANS4987E
ANS1228E
ANS4987E
ANS1802E
ANS1228E
ANS5258E
ANS1375E
ANS1999E
ANS5258E
ANS1228E
ANS5258E
ANS1375E

Я хотел бы взять эти записи и составить из них массив с уникальными записями, упорядоченными по их количеству вхождений.

Какую команду SQL использовать.

Я хочу получить такой результат:

Code            Occurrences
------          ----------
ANS1228E                67
ANS4987E                57
ANS1017E                51
ANS1948E                 8
ANS5258E                 7
ANS1802E                 7
ANS4007E                 3
ANS1375E                 3
ANS1301E                 2
ANS5279E                 2
ANS5280E                 2
ANS1468E                 1
ANS1487E                 1

РЕШЕНИЕ: (спасибо Крису Б. Беренсу)

SELECT code, COUNT(code) FROM table GROUP BY code ORDER BY COUNT(code) DESC

Ответы [ 5 ]

3 голосов
/ 27 января 2011

Попробуйте:

SELECT code, COUNT(Code) FROM TABLE GROUP BY Code ORDER BY COUNT(Code) desc

Кроме того, нам нужно знать, на какой платформе вы пытаетесь создать массив.

2 голосов
/ 27 января 2011
select column_name, count(*)
from table
group by column_name
order by count(*) desc

Редактировать: добавлен порядок сортировки desc

0 голосов
/ 27 января 2011

Вы ищете предложение group by.При группировании по столбцу вы можете вычислять агрегаты, включая COUNT.Затем вы можете упорядочить свой результат по этому количеству и получить то, что вам нужно.

0 голосов
/ 27 января 2011

Для начала вам нужен оператор SQL, чтобы получить список и количество

select yourcolumnname, count(*) as numberofoccurences
from yourtable
group by yourcolumnname
order by numberofoccurences desc

Следующая часть будет в значительной степени зависеть от того, какой инструмент вы используете, но, как правило, вы должны создать запрос с этим SQL, затем извлечь строки и для каждой строки вставить элемент (value, numberofoccurences) в массив. 1004 *

0 голосов
/ 27 января 2011

SQL прост:

select theValue
     , count(*)
  from theTable
 group by theValue
 order by count(*) desc

Получение его в виде массива в приложении означает, что вы передаете sql и извлекаете строки, большинство языков поддерживают возврат этих данных в виде массива.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...