我知道这必须是一个简单的,但我想做的一切都是通用的,所以很难创建谷歌术语以获得我想要的东西!
基本上我有一个表用于我的数据和一个每30秒输入一次新数据的工作。此数据已按相应字段分组,也按日期分组。
由于存在大量数据,其中大部分与表中已有的数据相似,我希望对表本身进行总结。显然,一种方法是创建第二个表,每30秒执行以下操作:
==> group by on the primary table and insert into secondary table
==> delete primary table
==> insert secondary table into primary table
==> delete secondary table
现在我知道有一种更简单的方法可以做到这一点,而无需创建另一个表和一堆作业以及相关的开销,但我无法使用谷歌找到它!
答案 0 :(得分:0)
您将数据和数据摘要保存在同一个表中吗?你能更准确地了解桌子的结构吗?
我认为你应该有两个表(一个用于数据,另一个用于聚合)或在表中有一个'type'字段,说明它是一个简单的数据行还是一个聚合的结果。
如果您选择“类型”字段,则可以执行类似
的操作INSERT into mytable (a,b,c,type)
select count(a),MAX(b),c,'aggregate' from mytable
where type='line' GROUP BY c
delete from mytable where type='line'