判断“存在“你还在用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/

相关文章
|
2月前
|
Java 程序员 API
有经验的程序员都不会使用! = null 来做判断
有经验的程序员都不会使用! = null 来做判断
21 1
|
4月前
|
前端开发 索引
七大基本判断问题,你都get到了吗
七大基本判断问题,你都get到了吗
|
5月前
|
SQL 算法 vr&ar
☆打卡算法☆LeetCode 181. 超过经理收入的员工 算法解析
☆打卡算法☆LeetCode 181. 超过经理收入的员工 算法解析
|
12月前
|
人工智能 小程序
行动派:想到就做,无关乎与成功或失败,重在过程!
行动派:想到就做,无关乎与成功或失败,重在过程!
153 0
|
12月前
|
小程序
如何做一个俄罗斯方块7:消除判断和处理
嗨!大家好,我是小蚂蚁。今天我们继续来了解下一个环节:消除判断和处理。因为消除判断和消除处理都比较简单,所以,这里我们就将这两个环节合并在一起讲解。
110 0
|
测试技术
字符串a和他许久未见面的同父异母的b(模拟)(思维)
字符串a和他许久未见面的同父异母的b(模拟)(思维)
60 0
|
前端开发
前端工作总结121-判断对象里面是否有0和1
前端工作总结121-判断对象里面是否有0和1
187 0
|
数据可视化 测试技术 Python
sum() 函数性能堪忧,列表降维有何良方?
(1)sum() 函数的性能到底差多少,为什么会差?(2)既然 sum() 不是最好的列表降维方法,那是否有什么替代方案呢?
157 0
sum() 函数性能堪忧,列表降维有何良方?
|
JavaScript
小明特别喜欢打扑克牌,除了喜欢斗地主和德州扑克之外,还喜欢一种叫桥牌的游戏,桥牌的具体规则相当复杂,有叫牌、打牌和计分三个阶段,还有不断变化的局况,局况可能影响叫牌打牌策略。但是小明暂时不关心这一些,
小明特别喜欢打扑克牌,除了喜欢斗地主和德州扑克之外,还喜欢一种叫桥牌的游戏,桥牌的具体规则相当复杂,有叫牌、打牌和计分三个阶段,还有不断变化的局况,局况可能影响叫牌打牌策略。但是小明暂时不关心这一些,
285 0
小明特别喜欢打扑克牌,除了喜欢斗地主和德州扑克之外,还喜欢一种叫桥牌的游戏,桥牌的具体规则相当复杂,有叫牌、打牌和计分三个阶段,还有不断变化的局况,局况可能影响叫牌打牌策略。但是小明暂时不关心这一些,
注意!这几点都是专利申请的关键步骤......
“专利申请”是每个专利权人申请专利都会遇到的环节,因为专利涉及到的事务较多,申请流程较为复杂。 今天的专利小课堂,就来给大家重点讲讲专利申请的关键步骤! 技术交底书 专利申请文件撰写有特定的要求,包括的文件有说明书摘要、说明书附图、说明书和说明书附图。