题目: Product(er, model, type)
   PC(model, speed, ram, hd, rd, price)
   Laptop(model, speed, ram ,hd, screen, price)
   Printer(model, color, type, price)
 查询每对具有相同速度和RAM的PC机,每一对只出现一次。例如,如果(i,j)符合,则(j,i)就不能出现在结果中出现。 
我的语句
select distinct pc1.model as pc1,pc2.model as pc2
from PC as pc1,pc as pc2
where pc1.ram=pc2.ram and pc1.model!=pc2.model and pc1.speed=pc2.speed;
结果是:
model, model
1008   1011
1011   1008

这两个结果是一样的只是顺序不一样(j,i)和(i,j)请问如何让结果是有一个

解决方案 »

  1.   

    select distinct model
    from pc 
    where exists(select 1 from pc P where p.ram = ram and p.speed=speed and p.model != model)
      

  2.   

    select distinct pc1.model as pc1,pc2.model as pc2
    from PC as pc1,pc as pc2
    where pc1.ram=pc2.ram and pc1.model<pc2.model and pc1.speed=pc2.speed;
    我找到个解决方法,把pc1小于的话就不会出现这情况了,就你一个回答,分就给你吧