举例:如下是根据性别分组,得到每个性别创建时间最新的People的list。
Listsql写法dataList = new ArrayList (); if (!CollectionUtils.isEmpty(dataList)) { Map > collectMap = dataList.stream().collect(Collectors.groupingBy(People::getSex)); List deviceDataList = new ArrayList<>(); collectMap.forEach((k, v) -> { if (!CollectionUtils.isEmpty(v)) { deviceDataList.add(v.stream().sorted(Comparator.comparing(People::getCreateTime).reversed()).collect(Collectors.toList()).get(0)); } }); }
SELECt * FROM people INNER JOIN (SELECt MAX(create_time) AS create_time FROM people GROUP BY sex) AS a ON a.create_time =people.create_time



