我想计算SQLite查询中日期之间某些值的百分比。
这就是Rows的样子
customerId, sex, timeStamp, item
我的代码
String query = "SELECT *, ROUND((count(sex)*100.0)/(SELECT count(sex) FROM salesTable where timeStamp BETWEEN '"+startdate+"' AND '"+enddate+"'),2) AS '"+PERCENTAGE+"' FROM salesTable where timeStamp BETWEEN '"+startdate+"' AND '"+enddate+"' GROUP BY sex ORDER BY percentage DESC" ;
我的问题是,例如,一位男性顾客购买3 *电话,它将像这样存储
此示例中的timeStamp是相同的,因为同时销售的手机。由于其他原因,我必须将所有东西分开存放,即使它们属于一起。
现在让我们说女性顾客购买2 *手机。然后我们有
我想得到的是50%的男性和50%的女性。我确定它很容易做到,但我坚持下去。我也尝试过GROUP BY sex,timeStamp
String query = "SELECT *, ROUND((count(sex)*100.0)/(SELECT count(sex) FROM salesTable where timeStamp BETWEEN '"+startdate+"' AND '"+enddate+"'),2) AS '"+PERCENTAGE+"' FROM salesTable where timeStamp BETWEEN '"+startdate+"' AND '"+enddate+"' GROUP BY sex, timeStamp ORDER BY percentage DESC" ;
最后但是没有工作
我使用性和值在Androids ListView中填充它,就像这样
答案 0 :(得分:0)
尝试
select sex, count(distinct customerId) from salesTable group by sex;
这将返回两行,例如
F|3
M|1
这给出了女性和男性的总数。从那里你可以计算百分比。