oracle竖行的两列变成横行_Oracle 竖列怎么横行现实

Oracle 竖列如何横行现实

本帖最后由 NobodyCanHelpMe 于 2012-06-12 23:02:27 编辑

表如下显示:

Name     Level      Month

张三       A          1

李四       B          2

王五   C     3

张三       B          2

李四       B          1

王五   C          1

张三       B          3

李四       B          3

王五   B          2

现在要求如下显示:

姓名    1月份   2月份  3月份

张三      A      B      B

李四      B      B      B

王五      C      B      C

求oracle  sql语句应该如何写.

------最佳解决方案--------------------

easy,

WITH t1 AS (SELECT   '张三' Name, 'A' "LEVEL", 1 Month FROM DUAL

UNION ALL

SELECT   '李四', 'B', 2 Month FROM DUAL

UNION ALL

SELECT   '王五', 'C', 3 Month FROM DUAL

UNION ALL

SELECT   '张三', 'B', 2 Month FROM DUAL

UNION ALL

SELECT   '李四', 'B', 1 Month FROM DUAL

UNION ALL

SELECT   '王五', 'C', 1 Month FROM DUAL

UNION ALL

SELECT   '张三', 'B', 3 Month FROM DUAL

UNION ALL

SELECT   '李四', 'B', 3 Month FROM DUAL

UNION ALL

SELECT   '王五', 'B', 2 Month FROM DUAL)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值