以特定方式将数据复制到新表

时间:2015-03-13 22:45:35

标签: mysql sql

我的桌子看起来像这样:

ID USER ITEM QTY
1  A    I1   AI1
2  A    I2   AI2
3  A    I3   AI3
4  B    I1   BI1
5  B    I2   BI2
6  B    I3   BI3
7  C    I1   CI1
      ...

我创建了一个新表,但是想像这样复制值:

USER  I1    I2    I3
A     AI1   AI2   AI3
B     BI1   BI2   BI3
C     CI1   CI2   CI3
           ...

我怎样才能在MySQL数据库中使用SQL?

1 个答案:

答案 0 :(得分:0)

使用Conditional Aggregate执行此操作

select USER,
       max(case when ITEM='I1' then QTY END) As I1,
       max(case when ITEM='I2' then QTY END) as I2,
       max(case when ITEM='I3' then QTY END) as I3
from yourtable
group by USER