1. 程式人生 > >將sql查詢出來的資料用時間分組(以天為單位)

將sql查詢出來的資料用時間分組(以天為單位)

list記憶體有數條包含time的資料,建立一個map用來裝載相同時間的資料,map的key為時間

Map<String,List<Map<String,Object>>> map = new HashMap<>();

for(Map<String,Object> map1 : list){

    if(!map.containsKey(map1.get("time"))){

            List<Map<String,Object>> values = new ArrayList<>();

            values.add(map1);

            map.put(map1.get("time"),values);

    }else{

            map.get(map1.get("time")).add(map1)

}

}

以上已經將同一時間的資料分組,接下來對分組的資料進行封裝,返回正確的資料格式。

listime是通過sql生成的一組時間(需傳開始時間和結束時間);

for(int i=0;i<listime.size();i++){

        if(map.containskey(listime.get(i).get("time").toString()))

        listime.get(i).put("fenzu",map.get(listime.get(i).get("time").toString()

));

}