简单表结构和数据:    TYPE   XMBH        PROJ_NAME ACCEPT_TIME
1 01 市2009-209 测试方案1 2009-2-24
2 01 市2009-210 测试方案2 2009-2-25
3 01 市2009-211 测试方案3 2009-2-26
4 01 市2009-212 测试方案4 2009-2-27
5 01 市2009-213 测试方案5 2009-2-28
6 02 市2009-209 测试方案1 2009-2-25
7 02         测试方案2 2009-2-24
8 02 市2009-211 测试方案33 2009-3-1
9 01 浦2009-003 好          2009-2-24需要显示结果:
 SCHEME       XMBH01    PROJNAME01   ENLARGE   XMBH02      PROJNAME02  drawing    MBH03     PROJNAME03                 
2009-02-24 浦2009-003 好         无   无         无   无      无         无
2009-02-24 市2009-209 测试方案1    2009-02-25 市2009-209  测试方案1 2009-3-28 市2009-209 测试方案03
2009-02-25 市2009-210 测试方案2    2009-02-24 无     测试方案2   无      无         无
2009-02-26 市2009-211 测试方案3    2009-03-01 市2009-211  测试方案33   无      无         无
2009-02-27 市2009-212 测试方案4       无    无         无          无      无         无
2009-02-28 市2009-213 测试方案5       无    无         无          无      无         无
显示结果注释:
SCHEME(type为01的ACCEPT_TIME)
XMBH01(type为01的XMBH)
PROJNAME01(type为01的PROJ_NAME)
ENLARGE(type为02的ACCEPT_TIME)
XMBH02(type为02的XMBH)
PROJNAME02(type为02的PROJ_NAME)
drawing(type为03的ACCEPT_TIME)
...
...

解决方案 »

  1.   

    SELECT a1.scheme, a1.xmbh01, a1.projname01, 
           a2.enlarge, a2.xmbh02,a2.projname02,
           a2.drawing, a2.xmbh03,a2.projname03
    FROM 
    (SELECT accept_time scheme, xmbh xmbh01, proj_name projname01
       FROM yourtab 
      WHERE type = '01') a1,
    (SELECT accept_time enlarge, xmbh xmbh02, proj_name projname02
       FROM yourtab 
      WHERE type = '01') a2,
    (SELECT accept_time drawing, xmbh xmbh03, proj_name projname03
       FROM yourtab 
      WHERE type = '01') a3
    WHERE a1.xmbh=a2.xmbh
      AND a1.xmbh=a3.xmbh;
      

  2.   

    上面的有误,红色的是改正后的
    SELECT a1.scheme, a1.xmbh01, a1.projname01, 
           a2.enlarge, a2.xmbh02,a2.projname02,
           a2.drawing, a2.xmbh03,a2.projname03
    FROM 
    (SELECT accept_time scheme, xmbh xmbh01, proj_name projname01
       FROM yourtab 
      WHERE type = '01') a1,
    (SELECT accept_time enlarge, xmbh xmbh02, proj_name projname02
       FROM yourtab 
      WHERE type = '02') a2,
    (SELECT accept_time drawing, xmbh xmbh03, proj_name projname03
       FROM yourtab 
      WHERE type = '03') a3
    WHERE a1.xmbh=a2.xmbh
      AND a1.xmbh=a3.xmbh;