【发布时间】:2012-03-24 15:40:36
【问题描述】:
有没有办法在论坛帖子中找到最受欢迎的标签?例如,我有一个名为[card=x]cardname[/card] 的标签。我想查找按x 出现次数排序的所有[card] 标签。另请注意,单个帖子中可以有多个[card] 标签。
【问题讨论】:
有没有办法在论坛帖子中找到最受欢迎的标签?例如,我有一个名为[card=x]cardname[/card] 的标签。我想查找按x 出现次数排序的所有[card] 标签。另请注意,单个帖子中可以有多个[card] 标签。
【问题讨论】:
我认为这会对你有很大帮助:
http://www.thingy-ma-jig.co.uk/comment/7200
假设您知道如何从那里汇总查询。如果没有,它会是这样的:
SET @findme="[card";
SELECT
count((LENGTH(n.FIELD) - LENGTH(REPLACE(n.FIELD, @findme, ""))) / LENGTH(@findme)) AS findme_count
FROM table n
ORDER BY findme_count DESC;
您必须为每个标签循环或大小写。我猜 REGEXP 被高估了,因为你可能只需要寻找类似 "[card" 而不是 "\\\[card .?\\\].?\\ \[\\\/卡\\\]"
编辑:对不起,我误读了帖子,看起来您不想计算标签而是计算参数,在这种情况下,您需要捕获 REGEXP。
【讨论】:
x 出现的次数排序。