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

时间:2015-02-20 10:03:15

标签: android sqlite

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

+---+---+---+
| 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 个答案:

答案 0 :(得分:3)

首先使用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" ;

Fiddle demo for your reference

<强>截图

enter image description here

希望这会帮助你。