请教各位一个问题,我的表中有这样的数据
航线  航空公司  。,里面的数据每行存一条数据,例如北京-上海,东航;北京-上海,南航;北京-上海,国航。
现在的目标是,我要把表中,东航和南航同飞的航线找出来,应该怎么写SQL,请大家指教

解决方案 »

  1.   

    select 航线 from 表
    where 航空公司 in('东航','南航')
    group by 航线
    having count(1)>1
      

  2.   

    补充说明一下
    例如:
    北京-上海,MU
    北京-上海,CZ
    北京-上海,CA
    北京-广州,MU
    北京-广州,CZ
    北京-武汉,MU
    北京-武汉,CA
    北京-青岛,CZ
    北京-青岛,CA
    目标是找出MU,CZ同飞的航线,结果应该是北京-上海,北京-广州
      

  3.   

    自联接。select a.hx,a.gs,COUNT(*)  from  V a 
      join V b on b.hx=a.hx and a.gs='MU' AND B.GS='CZ'
      GROUP BY A.HX,A.GS HAVING COUNT(*)>=1
      

  4.   

    having count(distinct 航空公司)>1就行了
      

  5.   

    select a.航线 from a,b where a.航线=b.航线