qq_15143807
Voiss
采纳率100%
2019-10-21 18:39

PostgreSQL如何对查询结果进行转列

已结题

查询结果是这样

图片说明

如何拆分成两行 打到这种效果

图片说明

就是把一行记录拆成两行显示

这个查询结果是由四百多行SQL查出来的

  • 点赞
  • 收藏
  • 复制链接分享

2条回答

  • wojiushiwo945you 毕小宝 2年前

    试试直接用 Java 程序对结果解析,定义一个包含 num 和 type 两个字段的实体类 Result,结果保存为一个 List ,伪代码如下:

    List<Result> last = new ArrayList<Result>();
    while(result.next(){
       1、 获取 type 的值,用 split 拆分 +  号前后的值。
       2、取当前记录的boutique_new_student 列的值作为 num,type 为 split[0]
       3、Result r = new Result(num,type)
         4、加入 last.add(r)
    }
    last 列表就是最后的数据
    
    点赞 1 评论 复制链接分享
  • weixin_39939973 riusky 7月前

    没看懂你要表达什么意思,但是拆分成多行的话,几行SQL就可以了

     select boutique_new_student,split_part(type,'+',1) from temp_data_test2
     union all 
     select boutique_continue,split_part(type,'+',2) from temp_data_test2
    

    图片说明

    不知道是不是这种效果

    点赞 评论 复制链接分享

为你推荐