返回hashtag posts的数量sql,mysql

s5a0g9ez  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(191)

我有两个表,1)hashtags表和2)hashtags\u关系表。
第一个列出了hashtags,第二个将hashtag与post关联起来。
表标签

id_hashtag | hashtag | 
  3         #love
  4         #monday
  5         #yesterday

**TABLE HASHTAGS RELATIONS**

id_hashtag | id_post | 
3           1234
3           1235
3           1236
4           1541
4           1543
5           1720
5           1721
5           1722
5           1723
5           1724

预期产量


# yesterday - 5 posts

 #love - 3 posts
 #monday - 2 posts

sql查询(mysql)

SELECT hs.*, ht.count(*) as count ?
FROM hashtags hs
LEFT JOIN hashtag_relation hr ON hs.id_hashtag=hr.id_hashtag
WHERE 1 
ORDER BY (ht.number of posts?) 
DESC 
LIMIT 10

问题
如何获得每个标签的帖子数?我试过用 ht.count(*)

eoxn13cs

eoxn13cs1#

你需要使用 GROUP BY :

SELECT hs.hashtag, count(hr.id_hashtag) as cnt
FROM hashtags hs
LEFT JOIN hashtag_relation hr ON hs.id_hashtag=hr.id_hashtag
GROUP BY hs.hashtag
ORDER BY cnt DESC LIMIT 10;

相关问题