Discuz教程网

是否能用多表连接查询?大伙遇到这种情况,应该怎么去考虑?

[复制链接]
authicon 星期八 发表于 2010-10-26 04:39:12 | 显示全部楼层 |阅读模式

今天碰到一个问题: 一个功能要关联到多张表(共五张表),而且这些表的数据量都比较大。现在我比较纠结: 应该用表的连接查询 还是单表查询,然后在代码里循环去从数据库取数据?



上一篇:AIX下ORACLE占用内存过多,应该从哪方面着手呢?
下一篇:求助:关于oracle rac的两个问题
authicon duolanshizhe 发表于 2010-10-26 05:05:04 | 显示全部楼层

各有利弊
这要看每次你需要提取多少数据
而且这些数据的选择性如何 等等因素
大表不可怕,可怕是针对大表的全表扫描
authicon yangliu9420 发表于 2010-10-26 06:59:29 | 显示全部楼层
各有利弊
这要看每次你需要提取多少数据
而且这些数据的选择性如何 等等因素
大表不可怕,可怕是针 ...
duolanshizhe 发表于 2010-09-27 16:18
请教你一下:  全表扫描是查询整个表数据不带where查询条件吗?   什么样的SQL语句才算是全表扫描?
authicon duolanshizhe 发表于 2010-10-26 08:09:42 | 显示全部楼层

说白了就是访问了不该访问的数据
这样会导致大量资源的浪费
authicon yangliu9420 发表于 2010-10-26 10:58:19 | 显示全部楼层

回复 4# duolanshizhe
但是,就算没有资源浪费,查询出来的数据量也是很大。
假设用多表连接查询肯定会非常的慢,
但是假设采用单表查询,然后再把查询出来的数据在代码里循环,然后再循环里不停的去访问别一张表,这样会在短时间里浪费掉很多数据库连接。
因此希望你能够提供一个思路,谢谢!
authicon duolanshizhe 发表于 2010-10-26 11:37:15 | 显示全部楼层

最关键还是获取数据量的大小
具体问题具体讨论
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2025-5-2 16:55

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表