Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.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 按日期求和值_Php_Mysql - Fatal编程技术网

Php 按日期求和值

Php 按日期求和值,php,mysql,Php,Mysql,我已经阅读了教程,搜索了论坛两周,但没有找到我需要的帮助。我现在跳进去问我的问题 我对这个竞技场还不熟悉,所以我很荣幸能与你的亲戚们分享我的情况 我家里有两个太阳能逆变器,每个都有一个RS232数据端口,现在通过IP转换器连接到我的家庭网络,将它们每小时产生的电力数据上传到我制作的一个简单网站上,这样我就可以看到在我工作的时间里发生了什么。信息进入我的FTP站点,数据完美地进入表格。我试图让PHP和MySQL代码将数据列在网页的表单/表格中。对于这个项目,我在我的家用电脑上安装了Dreamwea

我已经阅读了教程,搜索了论坛两周,但没有找到我需要的帮助。我现在跳进去问我的问题

我对这个竞技场还不熟悉,所以我很荣幸能与你的亲戚们分享我的情况

我家里有两个太阳能逆变器,每个都有一个RS232数据端口,现在通过IP转换器连接到我的家庭网络,将它们每小时产生的电力数据上传到我制作的一个简单网站上,这样我就可以看到在我工作的时间里发生了什么。信息进入我的FTP站点,数据完美地进入表格。我试图让PHP和MySQL代码将数据列在网页的表单/表格中。对于这个项目,我在我的家用电脑上安装了Dreamweaver和一个测试服务器,以使其正常工作。web主机MySQL上的所有数据与测试服务器中的数据相同(除了主机、名称和密码之外,但工作正常)

我有一个基本的MySQL表

+---------+----------+------------+---------+------------+----------+
| Unit ID |  Date    |    Time    |  Power  |  Volts     |  Current |
+---------+----------+------------+---------+------------+----------+
|    1    |YYYY-MM-DD|  12:00:00  |  560    |   XXXX     |   XXXX   |
+---------+----------+------------+---------+------------+----------+
|    1    |YYYY-MM-DD|  13:00:00  |  560    |   XXXX     |   XXXX   |
+---------+----------+------------+---------+------------+----------+
|    2    |YYYY-MM-DD|  12:00:00  |  490    |   XXXX     |   XXXX   |
+---------+----------+------------+---------+------------+----------+

Etc....
我能够将所有“功率”行的总“功率”与

<?php
$con = mysql_connect("localhost","NAME","PASWORD");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("inverters", $con);
$qry = mysql_query(" SELECT SUM(Power) AS total FROM feed "); 
$row = mysql_fetch_assoc($qry); 
echo $row['total']; 
mysql_close($con);
?>
就目前而言,我已经尝试过这个,但它不起作用

$query = mysql_query("SELECT SUM(Power) ORDER BY(Time) CURDATE(), AS 'day_total' FROM feed ");
$result = mysql_fetch_array($query);
$daytotal = $result["day_total"];
echo $row['day_total'];
$query = mysql_query("SELECT SUM(Power) AS year_total FROM feed WHERE YEAR(date) = YEAR(CURDATE());");
$result = mysql_fetch_array($query);
$yeartotal = $result["year_total"];
这一年来,我一直在尝试这个,但它不起作用

$query = mysql_query("SELECT SUM(Power) ORDER BY(Time) CURDATE(), AS 'day_total' FROM feed ");
$result = mysql_fetch_array($query);
$daytotal = $result["day_total"];
echo $row['day_total'];
$query = mysql_query("SELECT SUM(Power) AS year_total FROM feed WHERE YEAR(date) = YEAR(CURDATE());");
$result = mysql_fetch_array($query);
$yeartotal = $result["year_total"];
我甚至还没有到这个月,因为我正在阅读和阅读。我在网上看到了如何获取用户名、注册时间、每年或每月访问次数等信息,但没有一个能告诉我这方面的情况。我认为我在PHP和MySQL网站上读得越多,我就变得越愚蠢(正如你从上面的代码中可以看到的那样)

使用Google搜索如何获取当前日期只向我展示了如何在一行中输入当前日期,而不是如何对当前日期的值求和

我非常荣幸能为我的学习和这项工作提供任何帮助

谢谢,

艾伦

每日总功率:

SELECT date, SUM(Power) AS total FROM feed GROUP BY date ORDER BY date
对于月/周/年等,您只需更改
分组依据
-子句

每日总功率:

SELECT date, SUM(Power) AS total FROM feed GROUP BY date ORDER BY date

对于月/周/年等,您只需更改
分组依据
-子句

即可通过以下方式获得每日总计:

select mydate, sum(powerdrain)
from mytable
/* where date > now - 7 days */
group by date
order by date;
如果需要,插入
where
子句以进一步限制数据(我不确定该子句的语法,您需要检查)


答案的关键是
group by
子句,它将数据聚合到组中,令人惊讶的是:-)

您可以通过以下方式获得每日总计:

select mydate, sum(powerdrain)
from mytable
/* where date > now - 7 days */
group by date
order by date;
如果需要,插入
where
子句以进一步限制数据(我不确定该子句的语法,您需要检查)


答案的关键是
group by
子句,该子句将数据聚合到组中,令人惊讶的是:-)

@dan:如果数据库中有几年的时间,那么蛾类选择将不起作用,它将汇总所有年份的月份;)('1'将是2009年1月和2010年1月的总和)您好,谢谢您的快速回复。我刚刚编辑了这个,但是我在网页上只得到了一个空字段。当我打开网页时,我试图在字段中获得“今天”的当前功率值之和,我应该在其中的某个位置使用CURDATE()吗?@Alan:只需添加“WHERE date=CURDATE()”hmm。。我有$query=mysql\u query(“按日期顺序按日期从提要组中选择日期、总和(功率)作为天的总和,其中日期=CURDATE()”$result=mysql\u fetch\u数组($query)$daytotal=$result[“day_total”];echo$行['day_total'];但我在网页上看到的只是这个。。。警告:mysql_fetch_array()希望参数1是资源,布尔值在C:\xampp\htdocs\pvmonitor1\sw-report.php中在线给定161@dan:如果数据库中有几年,则蛾选择将不起作用,它将汇总所有年份的月份;)('1'将是2009年1月和2010年1月的总和)您好,谢谢您的快速回复。我刚刚编辑了这个,但是我在网页上只得到了一个空字段。当我打开网页时,我试图在字段中获得“今天”的当前功率值之和,我应该在其中的某个位置使用CURDATE()吗?@Alan:只需添加“WHERE date=CURDATE()”hmm。。我有$query=mysql\u query(“按日期顺序按日期从提要组中选择日期、总和(功率)作为天的总和,其中日期=CURDATE()”$result=mysql\u fetch\u数组($query)$daytotal=$result[“day_total”];echo$行['day_total'];但我在网页上看到的只是这个。。。警告:mysql_fetch_array()希望参数1是资源,布尔值在161行的C:\xampp\htdocs\pvmonitor1\sw-report.php中给出。您好,非常感谢您提供的信息。。。我现在使用的是试错法。。。再次感谢!您好,非常感谢您提供的信息。。。我现在使用的是试错法。。。再次感谢!