我意识到我们可以使用substring()
和locate()
函数进行tokonization
我试过了
insert into sum_of_counts
select substring(pair,1,locate('|',pair)),
sum(count)
from em
group by substring(pair,1,locate('|',pair))
例如:我们使用'resumption ||| resumption'作为对substring('resumption|||resumption',1,locate('|','resumption|||resumption'))
后查询
它应该是resumption|
但在查询后出现了
+------------+------+
| wild_pair | sum |
+------------+------+
| resumption | 8 |
+------------+------+
问题是我们可以在'resumption|||resumption'
表中找到em
在我查看表格sum_of_counts
之后,wild_pair
的某些word|
只有word
一些wild_pair只是<asp:Repeater runat="server" ID="repTest">
<ItemTemplate>
<asp:Button runat="server" Text='<%#Eval("Id", "button_{0}") %>' />
</ItemTemplate>
</asp:Repeater>
我该怎样才能解决这个问题?
答案 0 :(得分:1)
SELECT
LEFT(`pair`, LOCATE('|||', `pair`)) `wild_pair`,
SUM(count) `sum`
FROM `em`
GROUP BY `wild_pair`;
应该更容易做同样的事情。
如果在将结果插入另一个表时发生错误,请检查现有列是否足够宽以便以全长方式获取计算数据。
答案 1 :(得分:0)
您的结果不可能:
mysql> select locate('|', 'resumption|||resumption');
+----------------------------------------+
| locate('|', 'resumption|||resumption') |
+----------------------------------------+
| 11 |
+----------------------------------------+
1 row in set (0.00 sec)
mysql> select substring('resumption|||resumption', 1, 11);
+---------------------------------------------+
| substring('resumption|||resumption', 1, 11) |
+---------------------------------------------+
| resumption| |
+---------------------------------------------+
1 row in set (0.00 sec)
您确定pair
总是foo|||bar
与3 |||
吗?