仅查询符合条件的元素

时间:2019-06-06 12:57:03

标签: sql

假设我有下表:

id | packageName   | app | timestamp
------------------------------------
1  | io.kodular... | A   | 111
2  | io.kodular... | B   | 222
3  | io.kodular... | A   | 444
4  | io.kodular... | C   | 555

如何选择由app 分组的元素,其时间戳高于333,但没有低于该数字的记录?

我只需要获取app C,因为app A的时间戳记录比333低。我尝试了以下查询,但是它同时返回app Aapp C

SELECT app FROM table WHERE timestamp>=333 AND NOT timestamp<333 GROUP BY app;

知道如何执行该查询吗?

1 个答案:

答案 0 :(得分:2)

使用条件聚合:

SELECT app
FROM table t
GROUP BY app
HAVING MIN(timestamp) >= 333 ;