0
我在MYSQL数据库中有10 GB tabel事件。它是Web应用程序服务器的一部分。登录这个数据库以前没有配置好,所以我需要制作一个单独的表“事件”更薄。 我的意思是我有数据点值日志(行)和这个值的时间戳。 我无法删除所有,我需要能够创建图表从值将保留在此表中。这就是为什么我需要留下一些代表性数据。使用时间戳条件在一个表内删除MySQL中的行
一个想法是当ts diff小于X或者它应该构建在pointValues diff中时删除具有相同datapId的行?
请帮我构建正确的查询。
<!DOCTYPE html>
<html>
<head>
<style>
table, th, td {
border: 1px solid black;
}
</style>
</head>
<body>
<table>
<tr>
<th>id</th>
<th>datapId</th>
<th>dataType</th>
<th>pointValue</th>
<th>ts</th>
</tr>
<tr>
<td>1</td>
<td>5194</td>
<td>1</td>
<td>1</td>
<td>15060882793523</td>
</tr>
<tr>
<td>2</td>
<td>5194</td>
<td>1</td>
<td>1.1</td>
<td>15060882793524</td>
</tr>
<tr>
<td>3</td>
<td>5194</td>
<td>1</td>
<td>2.25</td>
<td>15060882793560</td>
</tr>
<tr>
<td>4</td>
<td>5194</td>
<td>1</td>
<td>2.23</td>
<td>15060882793590</td>
</tr>
<tr>
<td>5</td>
<td>5194</td>
<td>1</td>
<td>0</td>
<td>15060882793620</td>
</tr>
</table>
</body>
</html>
最后我决定这样做下面的方式,有少行,但不从数据计算平均值。我列出了所有具有最多值的数据点标识,并且我从database.pointvalues中删除了所有甚至(基于表自动增量索引)的recrod,其中dataPointId ='X'和(id%2)= 0; – user4201838