当前位置: 首页 > news >正文

专业的营销网站做网站怎么用国处服务器

专业的营销网站,做网站怎么用国处服务器,如何转换page到wordpress,网站建设案例方案昨天偶然看见一篇文章,提到说如果在mysql查询语句中,使用where 11会有性能问题?? 这着实把我吸引了,因为我项目中就有不少同事,包括我自己也有这样写的。为了不给其他人挖坑,赶紧学习一下&…

昨天偶然看见一篇文章,提到说如果在mysql查询语句中,使用where 1=1会有性能问题??

这着实把我吸引了,因为我项目中就有不少同事,包括我自己也有这样写的。为了不给其他人挖坑,赶紧学习一下,这样写sql到底有没有性能问题?

where 1=1的使用场景

我们来看下,where 1=1实际是怎么使用的, 先来看一段SQL

<select id="selectCmsCourseList" parameterType="java.util.Map" resultMap="CourseMap">SELECTa.id,a.category_id,a.model_id,b.*FROMcms_content aLEFT JOIN cms_course b ON a.id = b.idWHERE 1=1<if test="courseName != null and courseName != ''">AND b.course_name like concat(concat("%",#{courseName}),"%")</if><if test="disabled != null">AND a.disabled = #{disabled}</if><if test="categoryId != null">AND a.category_id = #{categoryId}</if>
</select>

如果用过mybatis的童鞋,看到这段代码应该很熟悉了吧,这里使用where 1=1的作用,就是为了方便后面的条件,能通过if判断,使用AND连接起来,这样即使后面if全部是false,没有参数,这个sql也不会报错。

where 1=1的替换方案

其实上面的这个写法,如果用mybatis,完全可以用where标签来替换,如:

<select id="selectCmsCourseList" parameterType="java.util.Map" resultMap="CourseMap">SELECTa.id,a.category_id,a.model_id,b.*FROMcms_content aLEFT JOIN cms_course b ON a.id = b.id<where><if test="courseName != null and courseName != ''">AND b.course_name like concat(concat("%",#{courseName}),"%")</if><if test="disabled != null">AND a.disabled = #{disabled}</if><if test="categoryId != null">AND a.category_id = #{categoryId}</if></where>
</select>

如果你使用了这个写法,就不存在1=1的问题了,所以也不用纠结,但本着打破砂锅问到底的精神,我们还是得探究一下使用1=1到底有没有性能问题

使用where 1=1有性能问题吗?

先来问问AI

可以看到,AI给到的答复是,基本没有性能问题,更多的是代码风格和可读性!

亲自检测

为了跟进一步测试,我们来写个SQL看看实际性能是否有差别

  1. explain select * from user;

  2. explain select * from user where 1=1;

  3. explain select * from user where id = 8;

  4. explain select * from user where 1=1 and id = 8;

可以看到示例1和示例2, 示例3和示例4,这两组写法,都是有个1=1的区别,但性能都是一样的,因此我们基本可以判定,这个写法,对性能是没有影响的。

总结

如果你在项目中也有使用where 1=1写的SQL,如果从可读性或者代码风格考虑,建议优化掉,但如果担心性能问题,则大可不必过多考虑~

http://www.yayakq.cn/news/362412/

相关文章:

  • 蒙阴县建设局网站wordpress主题UIGREAT
  • 跳转到另一个网站怎么做新网站建设验收
  • 石家庄网站建设教程电子商务平台需求分析
  • 58同城的网站建设wordpress改文字大小
  • 随州网站seo诊断手机网站开发怎么样
  • 做网站维护有前途吗苏州网站建设设计
  • 如何创办视频网站最新国内你新闻
  • 潍坊网站制作培训犀牛云做的网站好不好
  • 如何增加网站权重互联网架构师
  • 网站抽奖模块怎么做免费招聘网站推荐
  • 手机百度建设网站uc网站模板
  • 牛视频网站建设附近广告公司喷绘刻字
  • 网站前台模板下载如何自己建网站企业网站
  • 做富集分析的网站如何为网站做seo体检
  • 南京微网站建设做seo要投入什么
  • 苗木网站素材wordpress phpmyadmin
  • 建站找哪个公司网站建设方案计划书人员规划
  • 上海的建设网站首页阿里云网站备案幕布
  • 温州 做网站seo 页面
  • 新源网站建设静态网站做毕业设计
  • 太仓网站制作报网站开发培训班
  • 万户网络网站管理系统网站建设制作好评语
  • 如何用凡科建设手机教学网站百度推广退款电话
  • 网站的源码自建网站如何备案
  • 河北seo网站优化电话学习网页制作的网站
  • 做百度移动网站点Wordpress动静态分离
  • 做现金贷网站的公司海口网站建设托管
  • 湖北网站建设免费企业自助建站
  • 刮奖网站WordPress国产企业主题m
  • 营销型网站首页模板宣传片视频如何制作