如何在sqlite中将2列组合成一个新列

bon*_*ond 2 sqlite android

我有一个包含 3 列的表,我必须将 2 列中的值按降序排列成一列。

+---+---+---+
| 一个 | 乙 | C |
+---+---+---+    
| | | 1 | 2 |  
| f | 5 | 7 |
| | 9 | 5 |
+---+---+---+

使用此示例,输出会将 B 列和 C 列中的值合二为一,如下所示:

+---+----+
| 一个 | 乙 |
+---+----+ 
| | 9 |
| f | 7 |
| f | 5 |
| | 5 |
| | | 2 |
| | | 1 |
+---+----+

我目前的代码:

 String SELECT_QUERY = "SELECT a, b, c AS b FROM _table ORDER BY b DESC" ;
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?谢谢。

Ull*_*las 5

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

询问

 SELECT * FROM
 (
     SELECT A,B
     FROM tbl
     UNION
     SELECT A,C
     FROM tbl
 )t
 ORDER BY t.B DESC;
Run Code Online (Sandbox Code Playgroud)

在你的情况下,

String SELECT_QUERY = "SELECT * FROM (SELECT A,B FROM _table UNION SELECT A,C FROM _table)t ORDER BY tB DESC";

小提琴演示供您参考

截屏

在此处输入图片说明

希望这会帮助你。