同一语句表达的不同,引起结果的不同,急!
sten 2007-11-24 11:07:17 SELECT COUNT(p.prod_id) --结果1070877
FROM product p
JOIN party t ON t.party_id = p.owner_id
LEFT OUTER prod_2_addr a ON a.prod_id = p.prod_id
AND a.reason_cd = 1
LEFT OUTER JOIN (SELECT segment_id, party_id
FROM segment_member
WHERE segment_id IN (31, 32)) l ON l.party_id =
t.party_id
LEFT OUTER JOIN customer s ON p.prod_id = s.prod_id
WHERE s.serv_spec_id IN (467, 455, 456, 457)
AND p.prod_spec_id IN (1, 2);
--------------------------------------------------------------------------
SELECT count(p.prod_id) --结果303491
FROM product p,
party t,
prod_2_addr a,
(SELECT segment_id, party_id
FROM segment_member
WHERE segment_id IN
(31, 32)) l,
customer s
WHERE t.party_id = p.owner_id
AND a.prod_id = p.prod_id(+)
AND a.reason_cd = 1
AND l.party_id = t.party_id(+)
AND p.prod_id = s.prod_id
AND s.serv_spec_id IN (4, 5, 6, 7)
AND p.prod_spec_id IN (1, 2);
请大伙帮忙看看,请急的,为什么下面两个语句的执行结果会不一样?
第一条在9i下执行,结果为1070877, 第二条在8i下执行,结果为303491.
如果以第一条语句为标准,第二条语句哪里不对了,该如何改呢?谢谢!