1.为什么要小表驱动大表呢
类似循环嵌套
for(int i=5;.......)
{
for(int j=1000;......)
{}
}
如果小的循环在外层,对于数据库连接来说就只连接5次,进行5000次操作,如果1000在外,则需要进行1000次数据库连接,从而浪费资源,增加消耗。这就是为什么要小表驱动大表。
总结
下面结论都是针对in或exists的。
in后面跟的是小表,exists后面跟的是大表。
简记:in小,exists大。
对于exists
select .....from table where exists(subquery);
可以理解为:将主查询的数据放入子查询中做条件验证,根据验证结果(true或false)来决定主查询的数据是否得以保留。
本文探讨了在数据库操作中采用小表驱动大表的方法及其优势。通过对比不同循环结构,解释了为何小表在外层循环能有效减少数据库连接次数,从而节省资源并提高效率。文章还介绍了IN和EXISTS关键字的使用原则。
1041

被折叠的 条评论
为什么被折叠?



