我正在运行这两个查询。第一个有效,但由于某种原因,EXISTS() 函数似乎增加了大约一分钟的加载时间,这使得它难以使用。所以我写了第二个查询,我觉得应该给出相同的答案,但它给出了一个非常不同的答案。
第一的
select
count(`FavoritesHeaderID`) `count`
from `favoritesheader`
join `vwactiveevent` on `vwactiveevent`.`MainEventID`=`favoritesheader`.`MainEventID`
where `Admin`=0
and exists(
select 1
from `invoiceheader`
join `vwactiveevent` on `vwactiveevent`.`MainEventID`=`invoiceheader`.`MainEventID`
where `Phone`=`favoritesheader`.`CellPhone`
and `OrderStatusID`=2
); => 284
第二
select
count(`FavoritesHeaderID`) `count`
from `favoritesheader`
join `vwactiveevent` on `vwactiveevent`.`MainEventID`=`favoritesheader`.`MainEventID`
join `invoiceheader` on `vwactiveevent`.`MainEventID`=`invoiceheader`.`MainEventID`
where `Admin`=0
and `Phone`=`favoritesheader`.`CellPhone`
and `OrderStatusID`=2; => 1578
我不知道这是否足以提供足够的信息,但如果是的话,任何帮助将不胜感激。