1. 程式人生 > >聯表查詢降低複雜度

聯表查詢降低複雜度

聯表查詢過程中,如果涉及表非常多,查詢速度很慢。這時可以用追加欄位的方法,將分頁的結果拿出來進行聯表查詢。

devList = cmsDeviceDao.getMdevStateInfoByPage(paramMap, page);
if (null != devList && devList.size() > 0) {
    for (Map<String, Object> devMap : devList) {
        Map<String, Object> stateMap = deviceBindLogDao.queryDevBindLogByDid((String) devMap.get("did"));
        if (null != stateMap && null != stateMap.get("devState")&& null != stateMap.get("bindTime")) {

            devMap.putAll(stateMap);
        }
    }
}

如上程式碼所示,分頁結果為devList,追加欄位可以用加的形式,少量增加複雜度,使查詢變快很多。