ВЫБЕРИТЕ ИСПОЛЬЗОВАНИЕ COUNT в MySQL - PullRequest
4 голосов
/ 04 мая 2010

У меня очень большая база данных с примерно 120 миллионами записей в одной таблице. Сначала я очистил данные в этой таблице, прежде чем разделить их на несколько таблиц (возможно, нормализуя). Столбцы этой таблицы выглядят следующим образом: «id (первичный ключ), userId, Url, Tag». Это в основном подмножество набора данных с вкусного сайта. Как я уже сказал, каждая строка имеет идентификатор, идентификатор пользователя, URL-адрес и только один тег. Так, например, закладка на вкусном веб-сайте состоит из нескольких тегов для одного URL, что соответствует нескольким строкам моей базы данных. например:

"id"; "user" ;"url" ;"tag" 
"38";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"ajax" 
"39";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"api" 
"40";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"javascript" 
"41";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"library" 
"42";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"rails"

Мне нужен запрос, чтобы подсчитать, сколько раз тег использовался для ссылки. Спасибо за помощь

Ответы [ 3 ]

4 голосов
/ 04 мая 2010

Этот запрос должен работать для вас:

SELECT tag, url, count(tag) FROM table GROUP BY tag, url

Хотя не проверял это для вас.

0 голосов
/ 04 мая 2010

Я думаю, что на самом деле это больше похоже на SELECT tag, COUNT(tag) FROM TABLENAME WHERE URL='someurl' GROUP BY tag

0 голосов
/ 04 мая 2010

Это то, что вы ищете?

SELECT COUNT(tag) FROM TABLENAME
WHERE tag='sometag'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...