我有名为news和tags_news的表。鉴于新闻ID,我必须根据标签输出相关文章。所以我有一个标签列表,如谷歌,脸书,我正在使用以下查询
select
t2.title,
t2.content,
t2.id
from
tags_news as t1
left join news as t2 on t2.id=t1.news
where t1.tag in ('facebook','google');
一切正常,但文章按照他们的ID顺序返回。我想要有与给定标签更多匹配的文章。
答案 0 :(得分:1)
我希望我理解你的问题。
尝试以下方法:
select
t2.title,
t2.content,
t2.id,
count(*) as numberOfTagsRelatedToTheNews
from
tags_news as t1
left join news as t2 on t2.id=t1.news
where t1.tag in ('facebook','google')
group by t2.title
order by numberOfTagsRelatedToTheNews desc
这是你要找的吗?如果您对此答案有任何疑问,请询问。