关于数据库的连接查询

关于数据库的连接查询

如果在sql语句中,大量的,频繁的,使用连接查询会增加数据库负载,使数据库变慢吗?

如果会,通常是怎么避免大量的,频繁的使用连接查询?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
好帮手慕阿满 2020-04-25 19:20:15

同学你好,使用对象查询这种方式,会占据较多内存,但是效率会高些。

祝:学习愉快~

好帮手慕小班 2020-04-19 15:05:06

同学你好,连接查询表示将两个表通过之间关联的字段,进行连接查询。使用连接查询效率与直接查询的效率相比是较慢的。

http://img1.sycdn.imooc.com//climg/5e9bf7d709b88a5603350553.jpg

如上所示,这几个表是直接查询得到的。

    这里这么做可以将查询到的区域信息封装到Area的对象中,该对象是店铺类Shop的一个属性,所以通过店铺对象可以获取区域Area的信息,这样操作不仅提高了查询效率,也使业务层代码中操作起来更加方便。同理,PersonInfo、ShopCategory也是一样的。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • 提问者 超人迪加123 #1
    那这种直接查询的方式它的查询结果和内连接是一样的吗?
    2020-04-25 14:00:15
  • 好帮手慕阿满 回复 提问者 超人迪加123 #2
    同学你好,结果是一样的。祝:学习愉快~
    2020-04-25 16:45:44
  • 提问者 超人迪加123 回复 好帮手慕阿满 #3
    结果一样的话,那在原理上,内存占用,查询效率上也是一样的吗?
    2020-04-25 16:49:50
好帮手慕阿满 2020-04-18 19:14:05

同学你好,大量的,频繁的,使用连接查询会增加数据库负载,使数据库变慢。通常这种可以使用缓存避免多次查询。

祝:学习愉快~

  • 提问者 超人迪加123 #1
    老师的o2o案例中,tb_shop表关联tb_shop_category,tb_person_info,tb_area表,但并没有在mapper.xml文件中使用sql连接查询,而是直接用对象PersonInfo,ShopCategory,Area代替了personId,shopCategoryId,areaId,这样子能给程序带来什么便利?为什么这样做?
    2020-04-19 10:54:17
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师