Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

本人在开发中喜欢用联表查询,因为这样可以大大简化代码。

使用分步查询不仅需要编写多条sql语句,而且需要通过代码去实现哈希关系,需要使用到多个for循环。维护时,对代码的理解比较困难。

以下是本人对这些优缺点的理解:

联表查询的优点:

  • 简化代码逻辑,通过适当的注释可以轻松理解。

  • 减少数据库查询次数,通常情况下,查询速度更快。

分步查询的优点:

  • 能有效理由数据库缓存,提高查询效率,减少数据库压力。

  • 数据库表结构发生变化时,代码受到的影响比较少。

请补充...


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
565 views
Welcome To Ask or Share your Answers For Others

1 Answer

其实分步查询最大的好处是,便于做水平切分。所以很多公司都开始逐步移除JOIN、移除子查询了。

另外,JOIN还有两个比较大的缺点:

  1. 不易识别执行计划;

  2. 查询结果中容易产生NULL。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share

548k questions

547k answers

4 comments

86.3k users

...