2011-09-22 102 views
-1

我想弄清楚什么可能导致左连接挂起。我已经把问题缩小到一个特定的表格,但是我不能为了我的生活找出可能发生的事情。基本上,我有两个表,我们称它们为表A和表B.当我将表A连接到表B(它与表B的1对1关系不总是具有与表A相关的记录)时,查询挂起。当我将表A连接到表B时,它运行约半秒钟,返回约27,000条记录。为什么当我运行一个左连接时,应该花费更长时间但不是太多,它会挂起?我可以在表B中收到不好的数据吗?我加入的领域是bigint。我被困在这一个。任何帮助将非常感激。左连接挂起

这里是我的SQL:

select 
RegMemberTrip.idmember, 
RegParent1.idMember_Parent1, 
regparent1.idParent1 
from 
regmembertrip 
left join 
regparent1 on RegMemberTrip.idmember = regparent1.idMember_Parent1 
where 
regmembertrip.IDRound = 25 
  • RegParent1一种观点
  • 如果我改变地方标准 '= 24',它工作正常。 IDRound = 25是相当新的数据。就像我说的,如果我保持这种方式(idround = 25),并且内部连接可以正常工作。

感谢,

+4

张贴您的SQL请 – Chains

+0

您能否提供更多信息?每张桌子的模式是什么?一些示例数据?现在有太多的未知数来得到正确的答案。 – mwan

+0

没有任何sql,这个问题是没有意义的。 – athspk

回答

2

你试过在管理控制台的执行路径工具?你确定你的左连接实际上并没有在A和B上做一个巨大的笛卡尔产品吗?