我需要选择已租借来自2个不同分行的同一部电影的客户的号码(cid)。我的表如下所示:选择多行匹配数据
RENTED
(cid, copyid)
12345 99999
12345 88888
COPY
(copyid, mid, bid)
99999 444 123
88888 444 456
所以一个客户(12345)租了从两个不同的分支(123,456)同样的举动(444)。我不知道如何比较两个不同记录中的值,即mid = mid,bid bid!= bid。我试图用“一些”和“全部”,但这没有给我行(下面的代码)
select cid
from rented R join copy CP on R.copyid = CP.copyid
where CP.mid = all (select mid from copy where CP.mid = copy.mid) and CP.bid != some (select bid
from copy where CP.bid = copy.bid);
和我的输出应该是
cid
12345
这不符合两行竞价必须不同的要求。 – 2010-10-14 15:58:25
@Joe Stefanelli:现在它 – 2010-10-14 15:59:41
@Joe Stefanelli:用@OMG Ponies'更新查询应该符合您的要求:) thx – 2010-10-14 16:03:57