2009-12-05 35 views
0

我一直在努力尋找一種方法,通過出現在其中的名稱的受歡迎程度來對博客文章文章進行排名。查詢從定義的列表中查找內容中最常用的名稱

這是我想要實現的: 我有一個名人名字通常會出現的博客。我想統計一下這些名人名字在博客標題中的出現次數,並按照最受歡迎的名人排名(名字出現最多)。

我的想法是運行一個查詢,計算一個表(名人名稱表)中的名稱出現在帖子中的次數。這是我遇到麻煩的地方。找不到最好的查詢來完成這項工作。

任何幫助?我需要使用數組嗎?

+1

您使用哪種語言。你可以發佈一些代碼嗎? – pmarflee

+0

這裏是我的查詢:SELECT c.names,COUNT(*)作爲事件 從wp_celebnames ℃的內部加入wp_posts P的LIKE '%c.names%' 組由c.names p.post_title – Mike

回答

0

也許類似 - 調整您的SQL方言。

select c.name, count(*) as occurrences 
from celebrities c 
inner join articles a on a.title like '%' + c.name + '%' 
group by c.name 
+0

感謝這個。看起來它應該工作,我得到一個空的結果。這裏是我的查詢:SELECT c.names,COUNT(*)從wp_celebnames ℃的內部發生 像p.post_title加入wp_posts P '%c.names%' 組由c.names wp_celebnames是與表大約500名名人。 wp_posts.post_title的標題可能包含或不包含這些名稱之一。 – Mike

+0

您需要連接模式字符'%'+ c.names +'%' – tvanfosson

0

一個可能的解決方案是先索引數據然後搜索。我通過Lucene完成了這項工作,並且像魅力一樣工作。

相關問題