如何在sqlite中将2列合并为一列

3
我有一个三列的表格,我需要将其中两列按降序排列后合并到一起。
+---+---+---+
| A | B | C |
+---+---+---+    
| z | 1 | 2 |  
| f | 5 | 7 | 
| s | 9 | 5 |
+---+---+---+
使用这个例子,输出应该是将B列和C列的值合并成一个新的列,如下所示:
+---+----+
| A | B  |
+---+----+ 
| s | 9  |
| f | 7  |
| f | 5  |
| s | 5  | 
| z | 2  |
| z | 1  |
+---+----+
我的当前代码:
 String SELECT_QUERY = "SELECT a, b, c AS b FROM _table ORDER BY b DESC" ;

我该如何做到这一点? 谢谢。

1个回答

6

首先使用UNION将这两个查询组合起来,然后对组合结果进行降序排序。

查询语句

 SELECT * FROM
 (
     SELECT A,B
     FROM tbl
     UNION
     SELECT A,C
     FROM tbl
 )t
 ORDER BY t.B DESC;

在您的情况下,
String SELECT_QUERY = "SELECT * FROM (SELECT A,B FROM _table UNION SELECT A,C FROM _table)t ORDER BY t.B DESC" ;

这里有一个SQL演示供您参考

截图

enter image description here

希望这能帮到您。

非常感谢!运行得很好。 - bond

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接