SQL查询是否"存在",减少耗时
多数写法:
####sql:
select count(*) from table where a=1 and b=2
#####java:
int num= dao.countxxx(params);
if(num >0){
//存在逻辑
}else{
//不存在逻辑
}
优化写法:
####sql:
SELECT 1 FROM table WHERE a = 1 AND b = 2 LIMIT 1
#####java:
Integer exist= dao.existxxxx(params);
if(exist!=null){
//存在逻辑
}else{
//不存在逻辑
}
SQL不再使用count,而是改用LIMIT 1,让数据库查询时遇到一条就返回,不要再继续查找还有多少条了
业务代码中直接判断是否非空即可
### 查询条件越多,性能提升越多。