Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Mysql查询总和是否将每个结果相加?_Php_Mysql - Fatal编程技术网

Php Mysql查询总和是否将每个结果相加?

Php Mysql查询总和是否将每个结果相加?,php,mysql,Php,Mysql,对不起,如果我的问题没有意义。不确定我们是否只能用mysql来实现这一点。假设我有这样一个问题: SELECT SUM(win) * 100 as win_profit, date, uid FROM `tips` WHERE uid = 60 AND placed = 1 GROUP by date 这显然会得到数据库中每天win列的总和 假设数据库有: |___win___|____date____| | 10 | 2014-04-16 | | 10 | 2014-04

对不起,如果我的问题没有意义。不确定我们是否只能用mysql来实现这一点。假设我有这样一个问题:

SELECT SUM(win) * 100 as win_profit, date, uid FROM `tips` WHERE uid = 60 AND placed = 1 GROUP by date
这显然会得到数据库中每天win列的总和

假设数据库有:

|___win___|____date____|
|   10    | 2014-04-16 |
|   10    | 2014-04-16 |
|   10    | 2014-04-17 |
|   10    | 2014-04-18 |
|   10    | 2014-04-18 |
|   10    | 2014-04-18 |
|   10    | 2014-04-19 |
|   10    | 2014-04-19 |
|   10    | 2014-04-19 |
这将导致:

20
10
30
30
我如何才能得到结果,使每个加起来,仅mysql查询。因此,结果将是:

20
30
60
90

您可以获取所有不同的日期,并
左键联接
,以查找截至该日期的所有值的总和;我保留了示例查询中的100乘数,但您需要删除它以获得与所需结果匹配的结果

SELECT 100 * SUM(b.win), a.date 
FROM (SELECT DISTINCT date FROM `tips`) a
LEFT JOIN tips b ON a.date >= b.date
GROUP BY a.date
ORDER BY a.date

.

这可能是另一种方法

SET @full_sum=0;
SELECT @full_sum+SUM(win) as win_profit, date as this_date, uid, 
@full_sum:=(SELECT @full_sum+SUM(win) 
            FROM `testing` WHERE uid = 60 
            GROUP by date HAVING date=this_date) 
FROM `testing` WHERE uid = 60 GROUP by date;

别道歉,这是个有趣的问题。不过,我不确定是否/如何做到这一点。正如您所建议的,一旦返回了值,那么在mysql之外创建该功能就很容易了,如果不能仅使用mysql来完成的话。我也很想看看如何在php中实现它。但是我使用mysql循环作为Json输出,但是我可以稍后从php中进行。循环结果并执行$sum+=$row[0]非常简单。顺便问一下,主键是什么?谢谢,这看起来是一个不错的结果。我现在将测试它,只使用mysql。