如何使用拆分

时间:2017-09-22 10:34:16

标签: mysql h2

我有一个表flats,其中包含单个列flat_no,其值为

table flats

flat_no
101
102
103
104
105
  .
  .
  . so on
200

在上表中我有flat_no 101到200,所以在这里我只想将flat_no列值分成2部分,并将它们显示在2列中。

我需要预期的输出类似

 c1       c2   
101      151
102      152
103      153 
.          .
.          .
. so on    . so on
150      200

我已经编写了一个查询来实现这种情况但无法获得确切的输出

select rownum, (case when rownum<=50 then flat_no else 0 end) c1, 
    (case when rownum >50 then flat_no else 0 end) c2 from flats

1 个答案:

答案 0 :(得分:0)

通常这样的事情是通过自我联接完成的:

select * from flats f1 join flats f2 on f1.flat_no + 50 = f2.flat_no;

在您的情况下,您可以在不进行连接的情况下将50添加到同一列:

select flat_no, flat_no + 50 from flats where flat_no <= 150;