本帖最后由 kimsung 于 2011-01-15 13:58:39 编辑

解决方案 »

  1.   

    参考下贴中的多种方法。http://blog.csdn.net/ACMAIN_CHM/archive/2009/06/19/4283943.aspx
      

  2.   

    解决了.
    看来用max就可以.1楼说的case when 是查不到的. 他只能查询group里的第一条数据.得外加max.
    但是速度很慢.. -_-;
      

  3.   

    ACMAIN终于出现了啊.
    我是从你文章看的. 但是sum是似乎不好使的.
    因为他是字符串.
      

  4.   

    把SQL写下来. 测试过可以. 但还是不确定是不是有其他问题.SELECT c1,
           MAX(CASE c2 WHEN 'B1' THEN c3) AS B1,
           MAX(CASE c2 WHEN 'B2' THEN c3) AS B2,
           MAX(CASE c2 WHEN 'B3' THEN c3) AS B3,
           MAX(CASE c2 WHEN 'B4' THEN c3) AS B4
      FROM tx
     GROUP BY c1
      

  5.   

    刚没时间回,
    select * from tx;
    SELECT c1,
           MAX(CASE c2 WHEN 'B1' THEN c3 end) AS `B1`,
           MAX(CASE c2 WHEN 'B2' THEN c3 end) AS `B2`,
           MAX(CASE c2 WHEN 'B3' THEN c3 end) AS `B3`,
           MAX(CASE c2 WHEN 'B4' THEN c3 end) AS `B4`
      FROM tx
     GROUP BY c1;select c1,max(case when c2='B1' then c3 else '' end)  as `B1`,
    max(case when c2='B2' then c3 else '' end)  as `B2`,
    max(case when c2='B3' then c3 else '' end)  as `B3`,
    max(case when c2='B4' then c3 else '' end)  as `B4` 
    from tx
    GROUP BY C1这样就可以了
      

  6.   

    学习,一直不了解as , group by 的涵义