Android 具有一列的不同值的行的总和

Android 具有一列的不同值的行的总和,android,sqlite,Android,Sqlite,我的表格结构是: CREATE TABLE "NetworkTransactions" ("uid" INTEGER NOT NULL , "RxStart" INTEGER, "RxEnd" INTEGER, "TxStart" INTEGER, "TxEnd" INTEGER, "StartTS" INTEGER, "EndTS" INTEGER) 我想添加RxEnd和RxStart的区别,其中uid是唯一的 目前,我可以对差异进行求和,但它也可以对uid的不同出现的值进行求和,这些值是相

我的表格结构是:

CREATE TABLE "NetworkTransactions" ("uid" INTEGER NOT NULL , "RxStart" INTEGER, "RxEnd" INTEGER, "TxStart" INTEGER, "TxEnd" INTEGER, "StartTS" INTEGER, "EndTS" INTEGER)
我想添加RxEnd和RxStart的区别,其中uid是唯一的

目前,我可以对差异进行求和,但它也可以对uid的不同出现的值进行求和,这些值是相同的。在给定的查询中我需要修改什么

Cursor cursor = db.query("NetworkTransactions",
                            new String[] { "sum(RxEnd - RxStart) AS sum" }, null, null, "uid",
                            "sum > 0", "sum", null);
基本上,我想编写一个查询,相当于:

select sum(RxEnd - RxStart) as sum from (select DISTINCT uid, RxStart, RxEnd from NetworkTransactions) where sum > 0
输入表:

uid RxStart RxEnd 
1   100     200
2   100     150
1   100     200
2   100     150
4   400     500
6   200     600
预期产出: 仅复制具有唯一行id作为对应值的行的总和

uid RxStart RxEnd   Diff(RxEnd - RxStart)
1   100     200     100
2   100     150     50
4   400     500     100
6   200     600     400
________________________
sum                 650

选择sumRxEnd-RxStart作为sum,从NetworkTransactions中选择DISTINCT uid、RxStart、RxEnd作为temp


尝试上面的查询

请详细说明您的问题…..或编写Sql查询,将限制1放在查询末尾。您可以使用限制一次只获取一条记录time@koutuk看到问题的最后一部分,我更新了它,RxEnd from NetworkTransactions由于您的查询更复杂,因此有子查询,请使用