需要帮助在mysql中构建散列标签趋势查询

时间:2013-05-06 00:44:06

标签: mysql sql regex hashtag trending

我正在尝试构建一个测量“趋势”哈希标记(如推文)的查询。我有一个表推文和一个列消息(varchar)

基本上我只是想通过哈希标记对消息进行分组,但如果消息字段中有多个哈希标记,则会出现故障,这是我到目前为止的内容

SELECT count(message) as count, `message` FROM `tweets` WHERE `message` RLIKE '^#[[:alnum:]]' GROUP BY `tweets`.`message` ORDER BY `count` DESC

将输出以下行

"4","#sushi"
"3","#coffee"
"3","#wine"
"1","#coffee #park"
"1","#drinking"
"1","#steak"
"1","#pizza"
"1","#pasta"
"1","#food"

第四行是我想要两个哈希标签自己总计的问题,不知道我是否可以用mysql实现这一点。

1 个答案:

答案 0 :(得分:0)

您的专栏是message,但您希望按标签分组。从数据库设计POV,您的表不在1NF中,因为message实际上包含重复组的哈希标记。在更正之前,您将无法在桌面上使用SQL的强大功能。

您需要的是另一个表hashtags,每个消息中的每个标记都有一行。一旦你有了,查询实际上写了自己。