SQL查找是否存在,别再count了
目录
- 前言
- 目前多数人的写法
- 优化方案
前言
根据某一条件从数据库表中查询『有』与『没有』,只有两种状态,那为什么在写 SQL
的时候,还要 select count(*)
呢?
目前多数人的写法
业务代码中,需要根据一个或多个条件,查询是否存在记录,不关心有多少条记录。普遍的 SQL
及代码写法如下
SELECT count(*) FROM table WHERE a = 1 AND b = 2
int nums = xxDao.countXxxxByXxx(params);
if ( nums > 0 ) {//当存在时,执行这里的代码
} else {//当不存在时,执行这里的代码
}
是不是感觉很 OK
,没有什么问题
优化方案
推荐写法如下
SELECT 1 FROM table WHERE a = 1 AND b = 2 LIMIT 1
Integer exist = xxDao.existXxxxByXxx(params);
if ( exist != NULL ) {//当存在时,执行这里的代码
} else {//当不存在时,执行这里的代码
}
SQL
不再使用 count
,而是改用 LIMIT 1
,让数据库查询时遇到一条就返回,不要再继续查找还有多少条了
业务代码中直接判断是否非空即可
SQL查找是否存在,别再count了相关推荐
- SQL 查找是否“存在“,别再count了
你们查询数据库表中存不存在的某条数据的时候,是不是还在用select count(*) 普通写法 #### SQL写法: SELECT count(*) FROM table WHERE a = 1 ...
- SQL查找是否存在,别再count了!
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 来源:http://suo.im/5T1tGv 根据某一条 ...
- SQL查找是否存在,别再count了,很耗费时间的
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:http://suo.im/5T1tGv 根据某一条件从数据 ...
- SQL 查找是否存在,别再 COUNT 了,很耗费时间的
点击上方"朱小厮的博客",选择"设为星标" 后台回复"书",获取 根据某一条件从数据库表中查询 『有』与『没有』,只有两种状态,那为什么在写 ...
- idea怎么看sql执行打印_SQL查找是否quot;存在quot;,别再count了,很耗费时间的
根据某一条件从数据库表中查询 『有』与『没有』,只有两种状态,那为什么在写SQL的时候,还要SELECT count(*) 呢? 无论是刚入道的程序员新星,还是精湛沙场多年的程序员老白,都是一如既往的 ...
- 数据库优化:SQL 查找是否存在,别再 count 了,很耗费时间的!
目前多数人的写法 优化方案 总结 根据某一条件从数据库表中查询 『有』与『没有』,只有两种状态,那为什么在写SQL的时候,还要SELECT count(*) 呢? 无论是刚入道的程序员新星,还是精湛沙 ...
- SQL 查找是否存在,别再 count 了,很耗费时间的!
作者:程序猿囧途 来源:toutiao.com/i6826511837840802315 根据某一条件从数据库表中查询 『有』与『没有』,只有两种状态,那为什么在写SQL的时候,还要SELECT co ...
- SQL 查找重复记录
SQL 查找重复记录 CREATE TABLE product ( ID INT IDENTITY(1,1) PRIMARY KEY NOT NULL, Pid INT NOT NULL, Pn ...
- 老问题,SQL保存图片。保存以后再读出来,发现stream的大小不一致。虽然老,但没搜到结果。...
老问题,SQL保存图片.保存以后再读出来,发现stream的大小不一致.虽然老,但没搜到结果. Delphi / Windows SDK/API http://www.delphi2007.net/D ...
- 【MySQL】基于MySQL的SQL优化(二)——对count()、max()的优化
*本文章使用数据均来自MySQL样本数据库Sakila,参考:https://blog.csdn.net/tanglei6636/article/details/93042010 max(): 通过一 ...
最新文章
- 【ios开发/Xcode】使用UITableView完成学生信息及成绩的显示
- 如何创建一个最小的区块链
- LeetCode 102二叉树的层序遍历103二叉树锯齿形遍历104二叉树的最大深度
- ES6版Promise实现,给你不一样的体验
- 黄哥漫谈Python 生成器
- [转]我是如何走进黑客世界的?
- SQL存储过程的导入导出
- 目标检测第5步:如何在Windows 10系统下,搭建YOLOv5(5.0)环境?保姆级,没有人比这个更详细了(更新时间2022.3.22)
- C语言第五次博客作业---函数
- flex, swf 不能访问网络/本地资源
- 20165204 Java第六周学习
- ulimit限制 新系统_遇到一个很奇怪的问题,ulimit设置问题
- 创建.NET Core程序的Nuget Package
- 华为数通 软开 2022校招 面试全过 已开奖
- oracle修改执行计划,调整执行计划的三种方法
- IOS快捷指令的用法(快捷指令库使用方法)
- 华为业绩发布会:5G产品和供货没有受到“实体清单”影响
- Flink SQL语法检查
- clang: error:clang frontend command failed due to signal
- 大三学生简历_不要再问那些没有的高级开发人员了。 开始指导大三学生。
热门文章
- Python性能加速
- 算法:链表最快的排序方法,分而治之再合并排序
- 这文字的起始位置_如何用AE快速制造文字特效视频的效果?3分钟教你学会
- 为什么我们要使用图嵌入?
- 30. 与所有单词相关联的字串
- admin is not in the sudoers file. This incident will be reported
- length与length()
- K8S学习笔记之借助Minikube完成在windows环境下Kubernetes的单节点搭建-(超级简单)
- 【生信进阶练习1000days】day3-Bioconductor annotation resources
- 算法第四版_第二章_练习题_2.1.1~2.1.12