当前位置:编程学习 > 网站相关 >>

通过两张表查询数据的效率咨询

问一下,我需要根据条件去两个数据表中取数据。我是先从一个表中取出数据后 通过利用for all entries in 去另一张表中取数据效率高呢,还是通过 inner join连接两张数据表取数据效率高呢,很是迷茫,还请高手指点,十分感谢…… INNER JOIN --------------------编程问答-------------------- 这个要看具体情况,通常情况下如果两张表的关联都是关键字段时可以直接使用inner join,对于有些不是透明表(如簇表)是必须使用 for all entries in 的。 --------------------编程问答-------------------- 如果就是两张自己建的普通的表呢,比如说 整两个表的关联字段有一张表中是主键另一张表中不是,或者是在两张表中都不是主键 这怎么区分呢??还请指点……
--------------------编程问答-------------------- 一般来讲,还是用For entries in吧,很多项目是不允许用inner join的,原因嘛, 新手容易出差,而且,有数据问题不太好查. 

从效率上看,如果都用Key 或index字段来做join的话,效果会比for entries in 好点,两个表或三个表的情况,再多是绝对禁止的.

从可读性和可维护性上考虑, For entries in 是首选. --------------------编程问答-------------------- 一条sql取出数据是最好的,别执行多次sql就好。
补充:企业软件 ,  ERP/CRM
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,