zhengrenxiao 2012-09-24 15:10
浏览 292
已采纳

一次检索还是多次检索

现在要从数据库中检索数据,并对检索后数据进行操作,有以下两种方法:
1.一次检索出需要的所有数据,再对数据进行操作
2.先检索出一部分数据,对这部分数据操作完,再利用这部分数据检索其他数据,再操作其他数据
比如:id和parentId,id可以根据parentId检索出来,那么是应该检索出所有数据集中处理还是先检索parentId,处理完parentId后再检索id,处理id再将处理的结果合并返回?
从效率分析应该是一起检索出来的快,毕竟减少了与数据库之间的交互;但是由于检索结果比较复杂,那么程序处理也就相应复杂,程序的可读性就变差了。而另一种方法则相反,牺牲掉一部分性能增加了良好的可读性。

所以请问下,如果各位遇到相同情况会如何选择

  • 写回答

4条回答 默认 最新

  • jinnianshilongnian 2012-09-24 15:15
    关注

    这种情况需折中

    如一条sql 在以下场景可以改成多条sql:
    一条sql无法利用索引 但拆成多条可以;
    如果连表太多 可以拆 否则连表一般是嵌套查询 增加了复杂度;

    一条sql的性能 > 多条sql的性能 不成立

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?