例如,我有一个像(我改变我的例子)的表:
+---------------------+
| starttime IP |
+---------------------+
| 1 a |
| 2 a |
| 3 a |
| 5 a |
| 1 b |
| 2 b |
| 1 c |
| 10 c |
+---------------------+
首先,我将此表分组为相同的IP,因此我得到组a,组b,组c。
在a组中,最大统计时间为5,最小开始时间为1,5-1 = 4> 2.
组b中的,max为2,最小开始时间为1,2-1 = 1 <2。
组c中的,max为10,最小值为1,10-1 = 9> 2。
我只想找到max starttime-minimux stattime&gt; 2的组。 我想得到结果:
+---------------------+
| starttime IP |
+---------------------+
| 1 a |
| 2 a |
| 3 a |
| 5 a |
| 1 c |
| 10 c |
+---------------------+
答案 0 :(得分:1)
我们假设您的表名为表格:
select * from table where "IP" in (select "IP" from table group by "IP" having max(starttime)-min(starttime)>2);
这应该会给你预期的结果。