我正在尝试构建一个测量“趋势”哈希标记(如推文)的查询。我有一个表推文和一个列消息(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实现这一点。
答案 0 :(得分:0)
您的专栏是message
,但您希望按标签分组。从数据库设计POV,您的表不在1NF中,因为message
实际上包含重复组的哈希标记。在更正之前,您将无法在桌面上使用SQL的强大功能。
您需要的是另一个表hashtags
,每个消息中的每个标记都有一行。一旦你有了,查询实际上写了自己。