使用GROUP BY的Sqlite百分比

时间:2015-08-26 18:48:48

标签: sqlite

我有一些数据包含“货币对”(如欧元/美元,SPX500 /美元等)和其他信息。我可以使用

获得胜利
    SELECT "Currency Pair", COUNT(Pl) AS Win FROM data  WHERE Pl>0.01
    GROUP BY "Currency Pair";

虽然操作总数由

给出
    SELECT "Currency Pair", COUNT(Pl) AS Total FROM data  WHERE ABS(Pl)>0.01
    GROUP BY "Currency Pair";

现在我想打印一个像

这样的表格
    Currency Pair     Win   Tot   Success rate
    ---------------   ---   ---   ------------
    EUR/USD             3    11   27.27
    SPX500/USD          6     8   75.00

但不幸的是,我无法正确计算百分比,也无法在同一张桌子上打印Win和Tot。我的主要问题是传递两个不同的WHERE。

作为替代方式,我尝试了

   SELECT "Currency Pair",
   COUNT(CASE Pl WHEN Pl>0.01 THEN 1 ELSE NULL  END) AS WIN, 
   COUNT(Pl) AS Total  FROM data WHERE ABS(Pl)>0.01
   GROUP BY "Currency Pair";

但是虽然总数是正确的,但我在胜利专栏上有零

0 个答案:

没有答案