我的要求是这样的   t1的id1和id2和 t2的id关联    表一  t1             id1      id2 
                     001       002 
                     003       004   表二   t2            id       厂站名 
                       001      一厂 
                       002      二厂 
                       003      三厂 
                       004      四厂 
最后得到的结果是           
                  表一           id1            id2 
                            一厂               二厂 
                                 三厂              四厂   

解决方案 »

  1.   

    總算搞定了啊!
    SQL> select * from X;
     
    ID1 ID2
    --- ---
    001 002
    003 004
     
    SQL> 
    SQL> WITH A AS (SELECT '001' ID ,'一廠' NAME FROM DUAL
      2             UNION
      3             SELECT '002' ID ,'二廠' NAME FROM DUAL
      4             UNION
      5             SELECT '003' ID ,'三廠' NAME FROM DUAL
      6             UNION
      7             SELECT '004' ID ,'四廠' NAME FROM DUAL
      8             )
      9  
      9  SELECT B.ID1,C.ID2 FROM (SELECT ROWNUM RN,A.NAME ID1,X.ID1 ID3 FROM X,A WHERE A.ID=X.ID1) B
     10  ,(SELECT ROWNUM RN,A.NAME ID2,X.ID2 ID4 FROM X,A WHERE A.ID=X.ID2)  C
     11  WHERE B.RN=C.RN
     12  ;
     
    ID1  ID2
    ---- ----
    一廠 二廠
    三廠 四廠
     
      

  2.   

    后面就好寫多了
    CREATE OR REPLACE VIEW VIEW_NAME AS 
    SELECT B.ID1,C.ID2 FROM (SELECT ROWNUM RN,A.NAME ID1,X.ID1 ID3 FROM X,A WHERE A.ID=X.ID1) B        
    ,(SELECT ROWNUM RN,A.NAME ID2,X.ID2 ID4 FROM X,A WHERE A.ID=X.ID2)  C
    WHERE B.RN=C.RN
      

  3.   

    第二種方法
    CREATE   OR   REPLACE   VIEW   VIEW_NAME   AS   
     select (select A.name from A where A.id = X.id1) id1,
           (select A.name from A where A.id = X.id2) id2
    from X;
      

  4.   

    楼上的兄弟,非常感谢!!我为csdn有你这样的热心网友感到骄傲!
      

  5.   

    select (select b.table_name from t2 b where b.id=a.id1) as c1,
    (select b.table_name from t2 b where b.id=a.id2) as c2 
    from t1 a
    其中t2的id列应该有唯一性约束,同时唯一性约束会在id列上创建唯一性索引,这样关联的速度会很快。
      

  6.   


    create or replace view view_name as 
    select b.name,c.name from t1 a,t2 b,t2 c 
    where a.id1=b.id and a.id2=c.id