判断“存在“你还在用count吗,细节决定成败

简介: 为什么要用count(*)在我们实际开发中,业务 往往是 如:(判断该手机是否已经存在),我们为了提高程序的运行效率,这个时候都会使用

@[toc]
在这里插入图片描述

1. 为什么要用count(*)

在我们实际开发中,业务 往往是 如:(判断该手机是否已经存在),我们为了提高程序的运行效率,这个时候都会使用

select count(*) from sys_user where phone = '18217692100'

在这里插入图片描述

//而我们Java代码
Integer count = mapper.selectCount(phone);
//写业务代码
if(count != 0){
  ……
else{
  ……
}

2. 优化方案

select 1 from sys_user where phone = '1821762100' LIMIT 1

在这里插入图片描述

//而我们Java代码
Integer count = mapper.selectCount(phone);
//写业务代码
if(count != null){
  ……
else{
  ……
}
  • SQL不再使用count,而是改用LIMIT 1,让数据库查询时遇到一条就返回,不要再继续查找还有多少条了
    业务代码中直接判断是否非空即可
  • 正所谓 ,细节决定成败 ,从速度上可以看出我们的优化方案快了好多

个人博客地址:http://blog.yanxiaolong.cn/

相关文章
|
8月前
|
前端开发 索引
七大基本判断问题,你都get到了吗
七大基本判断问题,你都get到了吗
|
小程序
如何做一个俄罗斯方块7:消除判断和处理
嗨!大家好,我是小蚂蚁。今天我们继续来了解下一个环节:消除判断和处理。因为消除判断和消除处理都比较简单,所以,这里我们就将这两个环节合并在一起讲解。
187 0
|
测试技术
字符串a和他许久未见面的同父异母的b(模拟)(思维)
字符串a和他许久未见面的同父异母的b(模拟)(思维)
87 0
|
算法
课外拓展3.判断回文
递归的方法是真的骚,要知道,递归能适用于什么情况,首先,要进行多次类似的运算,范围越来越小,要有一个结束条件。
81 0
|
JavaScript 前端开发 安全
让你写代码和写诗一样,良好的规范就是成功的一半。
随着一个项目的开发的日益庞大,参与开发的人员也越来越多,这就出现了怎么样更好的协作的问题。当然一个好的代码规范是一个项目走向成功的基石。如果在开发中每个小伙伴都各行其事,那这个项目势必会出现各种问题,导致开发效率低下,后期维护特别麻烦等诸多问题。
|
JavaScript
小明特别喜欢打扑克牌,除了喜欢斗地主和德州扑克之外,还喜欢一种叫桥牌的游戏,桥牌的具体规则相当复杂,有叫牌、打牌和计分三个阶段,还有不断变化的局况,局况可能影响叫牌打牌策略。但是小明暂时不关心这一些,
小明特别喜欢打扑克牌,除了喜欢斗地主和德州扑克之外,还喜欢一种叫桥牌的游戏,桥牌的具体规则相当复杂,有叫牌、打牌和计分三个阶段,还有不断变化的局况,局况可能影响叫牌打牌策略。但是小明暂时不关心这一些,
376 0
L2-029 特立独行的幸福 (25 分)(数组模拟)
L2-029 特立独行的幸福 (25 分)(数组模拟)
137 0
|
前端开发
前端工作总结275-三元运算符进行判断
前端工作总结275-三元运算符进行判断
89 0
|
JavaScript 前端开发
【重温基础】18.相等性判断
【重温基础】18.相等性判断
223 0
|
Oracle Java 关系型数据库
啪啪打脸!领导说:try-catch要放在循环体外!(上)
啪啪打脸!领导说:try-catch要放在循环体外!
116 0
啪啪打脸!领导说:try-catch要放在循环体外!(上)