关于一行数据转成多行的sql的问题

攻城小狮 2015-03-19 05:28:01
我从一个表中查询出一条数据,数据中有很多字段,例如:
列名
操作人1 操作时间1 操作人2 操作时间2 操作人3 操作时间 3 .............
小明 20140304 小红 20140909 小王 20150101 .............

现在我想要的sql是这样一个实现结果,
小明 20140304
小红 20140909
小王 20150101
......
也就是一行转成多行,包含两列.
求大神给出一个具体的sql,我自己写的个感觉太复杂了,有没什么好的sql能简单解决。用的是oracle 11g


...全文
555 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
IceIsabel 2015-03-20
  • 打赏
  • 举报
回复
引用 1 楼 IceIsabel 的回复:
查询出来的这行数据大约有多少列?
16列左右[/quote] 方法还是2楼的方法,我问有多少列的目的是如果列比较多,可以用存储过程动态生成SQL
攻城小狮 2015-03-19
  • 打赏
  • 举报
回复
引用 2 楼 wildwave 的回复:
列转成行好办,因为字段是固定的 select 操作人1,操作时间1 from 表名 union all select 操作人2,操作时间2 from 表名 union all select 操作人3,操作时间3 from 表名 ... 即可
引用 1 楼 IceIsabel 的回复:
查询出来的这行数据大约有多少列?
16列左右
攻城小狮 2015-03-19
  • 打赏
  • 举报
回复
引用 楼主 zzx125 的回复:
我从一个表中查询出一条数据,数据中有很多字段,例如: 列名 操作人1 操作时间1 操作人2 操作时间2 操作人3 操作时间 3 ............. 小明 20140304 小红 20140909 小王 20150101 ............. 现在我想要的sql是这样一个实现结果, 小明 20140304 小红 20140909 小王 20150101 ...... 也就是一行转成多行,包含两列. 求大神给出一个具体的sql,我自己写的个感觉太复杂了,有没什么好的s [quote=引用 楼主 zzx125 的回复:] 我从一个表中查询出一条数据,数据中有很多字段,例如: 列名 操作人1 操作时间1 操作人2 操作时间2 操作人3 操作时间 3 ............. 小明 20140304 小红 20140909 小王 20150101 ............. 现在我想要的sql是这样一个实现结果, 小明 20140304 小红 20140909 小王 20150101 ...... 也就是一行转成多行,包含两列. 求大神给出一个具体的sql,我自己写的个感觉太复杂了,有没什么好的sql能简单解决。用的是oracle 11g
16列左右
攻城小狮 2015-03-19
  • 打赏
  • 举报
回复
这些数据大概有16列左右,除了2楼的方法呢?
卖水果的net 2015-03-19
  • 打赏
  • 举报
回复
对,就使用 2# 的方法,这个最简单。
小灰狼W 2015-03-19
  • 打赏
  • 举报
回复
列转成行好办,因为字段是固定的 select 操作人1,操作时间1 from 表名 union all select 操作人2,操作时间2 from 表名 union all select 操作人3,操作时间3 from 表名 ... 即可
IceIsabel 2015-03-19
  • 打赏
  • 举报
回复
查询出来的这行数据大约有多少列?

17,090

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧