Счетчик SQL отличается? - PullRequest
0 голосов
/ 26 марта 2011

У меня есть таблица, приведенная ниже:

id - tag_id - post_id
1  -    1   -  3
2  -    1   -  6
3  -    1   -  2
4  -    2   -  3
5  -    2   -  9
6  -    1   -  7

Я хотел бы написать оператор mySQL, который определяет, сколько раз на тег ссылается.

Я бы хотелзатем используйте PHP для форматирования результатов.tag # was referenced # times и они будут отсортированы в порядке # times.

Мои возможности с MySQL ограничены очень простыми операторами SELECT, INSERT, UPDATE и DELETE, поэтому я не уверен, что делать дальшеоб этом.Вы можете помочь?

Ответы [ 3 ]

4 голосов
/ 26 марта 2011
select tag_id, count(*)
from mytable
group by tag_id
order by count(*) desc

Это позволит упорядочить результаты по количеству (*) в порядке убывания, то есть теги с большинством сообщений появятся в верхних строках.

2 голосов
/ 26 марта 2011

SELECT tag_id, COUNT(*) FROM table GROUP BY tag_id подсчитает каждый идентификатор тэга

1 голос
/ 26 марта 2011

Чтобы получить теги и количество постов каждого тега, отсортированные по убыванию, вы можете использовать следующий запрос:

select tag_id, count(*) as num
from your_table
group by tag_id
order by count(*) desc

(Конечно, если вам нужны те же данные, но отсортированные в порядке возрастания, просто удалите desc в предложении order by)

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