我有一个包含文本列的表,其中包含各种数据位。
例如
Hello world
This is a piece of text
Q1 3
New text
Q2 2
Q1 2
Q1 3
More text
开头有Q1的文本位是投票数据,是我感兴趣的位。
如何编写仅获取投票数据计数的查询,例如从上面的表数据中返回
Q1:2 counts 1
Q1:3 counts 2
Q2:2 counts 1
我希望这是有道理的!
答案 0 :(得分:2)
您可以按计数执行分组,并使用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
的{{1}}可以使用索引, %
没有。)