0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SQL和Java的代码写法

数据分析与开发 来源:CSDN技术社区 作者:CSDN技术社区 2020-10-21 10:35 次阅读

根据某一条件从数据库表中查询 『有』与『没有』,只有两种状态,那为什么在写SQL的时候,还要select count(*) 呢?

无论是刚入道的程序员新星,还是精湛沙场多年的程序员老白,都是一如既往的count.

目前多数人的写法

多次 review 代码时,发现如现现象:

业务代码中,需要根据一个或多个条件,查询是否存在记录,不关心有多少条记录。普遍的SQL及代码写法如下

SQL写法:

Java写法:

是不是感觉很OK,没有什么问题

优化方案

推荐写法如下:

SQL写法:

Java写法:

SQL不再使用count,而是改用LIMIT 1,让数据库查询时遇到一条就返回,不要再继续查找还有多少条了

业务代码中直接判断是否非空即可

总结

根据查询条件查出来的条数越多,性能提升的越明显,在某些情况下,还可以减少联合索引的创建。
责任编辑人:CC

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2960

    浏览量

    104578
  • SQL
    SQL
    +关注

    关注

    1

    文章

    760

    浏览量

    44087

原文标题:SQL判断是否"存在",还在用 count 操作?很耗时的!

文章出处:【微信号:DBDevs,微信公众号:数据分析与开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何通过注解来优化我们的Java代码

    Java注解可以说是我们编码过程中最常用的。本篇文章将给大家介绍Java注解的概念、作用以及如何使用注解来提升代码的可读性和灵活性,并介绍如何通过注解来优化我们的Java
    的头像 发表于 09-30 11:39 600次阅读

    嵌入式SQL的相关资料分享

    1嵌入式SQL嵌入式SQL是指将SQL语言嵌入到程序设计语言中,被嵌入得程序设计语言如C、C++、java等称为宿主语言预编译:由数据库管理系统得预处理程序队源程序进行扫描,识别出嵌入
    发表于 11-09 06:24

    JAVA版聊天软件源代码

    JAVA版聊天软件源代码 一款用JAVA制作开发的小型聊天软件,里面附有安装程序和JAVA代码。.rar
    发表于 03-11 14:21 0次下载

    如何使用Java Web防范SQL 注入攻击的资料说明

    网络的广泛应用给社会带来极大便捷,网络安全特别是SQL 注入也成为了一个倍受关注的问题。与此同时,Java Web 由于其平台无关性、“一次编写、随处运行”,使得越来越多的程序员加入到Java 当中。本文在分析了
    发表于 02-26 15:59 12次下载
    如何使用<b class='flag-5'>Java</b> Web防范<b class='flag-5'>SQL</b> 注入攻击的资料说明

    使用java语言导入SQL到MySql的源代码免费下载

    本文档的主要内容详细介绍的是使用java语言导入SQL到MySql的源代码免费下载。
    发表于 09-23 16:38 3次下载
    使用<b class='flag-5'>java</b>语言导入<b class='flag-5'>SQL</b>到MySql的源<b class='flag-5'>代码</b>免费下载

    Java异常的习题和代码分析

    Java异常的习题和代码分析
    发表于 07-08 14:54 5次下载
    <b class='flag-5'>Java</b>异常的习题和<b class='flag-5'>代码</b>分析

    SQL告别count改用LIMIT 1

    的count 目前多数人的写法 多次REVIEW代码时,发现如现现象:业务代码中,需要根据一个或多个条件,查询是否存在记录,不关心有多少条记录。普遍的SQL
    的头像 发表于 07-26 10:57 2035次阅读

    RushOrm将java类映射到SQL表来取代对SQL的需求

    RushOrm 通过将 java 类映射到 SQL 表来取代对 SQL 的需求。 为什么要编写 RushOrm? 复杂的关系 - RushObjects 支持其他 RushObjects 的列表
    发表于 04-13 09:59 2次下载

    JAVA8提供了Optional类来优化这种写法

    这种写法是比较丑陋的,为了避免上述丑陋的写法,让丑陋的设计变得优雅。JAVA8提供了Optional类来优化这种写法,接下来的正文部分进行详细说明
    的头像 发表于 04-24 15:18 1053次阅读

    Java中如何解析、格式化、生成SQL语句?

    昨天在群里看到有小伙伴问,Java里如何解析SQL语句然后格式化SQL,是否有现成类库可以使用?
    的头像 发表于 04-10 11:59 949次阅读

    基于JAVA+SQL电子通讯录带系统托盘(源代码及配置文档)

    基于JAVA+SQL电子通讯录带系统托盘(源代码及配置文档)
    发表于 06-09 16:07 0次下载

    SQL MySQL编写技巧:行与行比较的功能

    实现简单,SQL 也能走索引,而且只查询一次数据库,感觉可行 只是:有点不好理解,因为我们平时这么用的少,所以这种写法看起来很陌生 另外,行行比较是 SQL 规范,不是某个关系型数据库的规范,也就说关系型数据库都应该支持这种
    发表于 07-17 09:51 480次阅读
    <b class='flag-5'>SQL</b> MySQL编写技巧:行与行比较的功能

    什么是SQL注入?Java项目防止SQL注入方式

    Java项目防止SQL注入方式 这里总结4种: PreparedStatement防止SQL注入 mybatis中#{}防止SQL注入 对请求参数的敏感词汇进行过滤 ngin
    发表于 10-16 14:26 567次阅读

    insert into 语句的三种写法

    INSERT INTO是MySQL中常用的一种SQL语句,用于将数据插入到表中。此文将详细介绍INSERT INTO语句的三种不同写法及其用途,并提供代码示例和相关解释。 正文: 一、基本插入
    的头像 发表于 11-21 14:18 1.3w次阅读

    SQL错误代码及解决方案

    SQL数据库开发和管理中,常见的错误代码及其解决方案可以归纳如下: 一、语法错误(Syntax Errors) 错误代码 :无特定代码,但通常会在错误消息中明确指出是语法错误。 原因
    的头像 发表于 11-19 10:21 645次阅读