test表中有两个字段itemid和time,查询itemid去重,保留time最新的数据,用sql写出查询
时间: 2024-02-21 21:59:02 浏览: 64
可以使用子查询和GROUP BY语句实现:
```
SELECT itemid, MAX(time) AS time
FROM test
GROUP BY itemid;
```
这条SQL语句将test表按照itemid进行分组,然后对于每组数据,只选择time最大的那条数据。最终结果是每个itemid对应的最新的一条数据。
相关问题
test表中有两个字段itemid和time,查询itemid去重,去重用distinct,保留time最新的数据,用sql写出查询
可以使用子查询和DISTINCT语句实现:
```
SELECT DISTINCT itemid, time
FROM test t1
WHERE time = (SELECT MAX(time) FROM test t2 WHERE t1.itemid = t2.itemid);
```
这条SQL语句将test表按照itemid分组,然后对于每个组,选择最新的那条数据,并保留其itemid和time字段。DISTINCT语句用于去重,保证每个itemid只出现一次。
阅读全文