我有一个包含各种数据位的文本列的表格。
例如
Hello world
This is a piece of text
Q1 3
New text
Q2 2
Q1 2
Q1 3
More text
文本trhat开头有Q1的位是投票数据,是我感兴趣的位。
我如何编写一个只获取投票数据计数的查询,例如从上面的表数据中返回
Q1:2 counts 1
Q1:3 counts 2
Q2:2 counts 1
我希望这是有道理的!
最佳答案
您可以按计数进行分组,并使用 WHERE 来限制您想要的情况:
SELECT table.textcol, COUNT(table.textcol)
FROM table
WHERE table.textcol LIKE "Q%"
GROUP BY table.textcol
ORDER BY table.textcol
这将输出
Q1 2 -> 1
Q1 3 -> 2
Q1 1-> 1
将 LIKE
更改为 REGEXP如果您想要更多的控制(但要注意索引,末尾带有 %
的 LIKE
可以使用索引,而 REGEXP
则不能)。
关于mysql - 组数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3139401/