`
wshyj18
  • 浏览: 163565 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

oracle行转列

 
阅读更多

有如下一张表,

ID  city_from city_to seq seq_from seq_to

1     北京         武汉     0      北京         郑州
2     北京         武汉     1      郑州         武汉

 

我需要得到如何结果:

 

 

北京      武汉        北京-郑州-武汉

 

具体sql语句如下:

select city_from,city_to,max(decode(seq,'0',seq_from||'-',null))||max
(decode(seq,'1',seq_from||'-',null))||city_to detail from A group by
city_from,city_to

 

而如果你想得到这样的结果:

北京 武汉 北京 郑州 武汉

sql语句如下:

select city_from,city_to,max(decode(seq,'0',seq_from,null)) seq_1,max
(decode(seq,'1',seq_from,null)) seq_2,city_to seq_3 from A group by
city_from,city_to

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics