如有如下表格:

                      仓库库存表(inventory)

行列互换为以下表格:

MySQL数据库行列互换:

使用if语句判断: if(表达式,v1,v2)

表达式为:

select 
        仓库名称,
        max(判断 月份=1 显示库存),  
        max(判断 月份=2 显示库存),
        max(判断 月份=3 显示库存) 
    from 表名
    group by 仓库名称;

注意:关于max这个也可以其他的,这里只是用作判断的嵌套。sum等也可以。

具体实现:

select name as 仓库名称,max(if(month='1’,stock,0)) as 一月份,max(if(month='2',stock,0)) as 二月份 from inventory group by 仓库名称;

09-27 15:28