我想从table = iis1计算column = ServiceQuality的平均值,同时将值更新为table = adminsum,column = avevalue WHERE aname ='SERVICEQUALITY'。
phpmyadmin中的表格如下所示:
dbname=iis ; table name=adminsum;
UserID aname avevalue
1 SERVICEQUALITY (insert average value here)
2 USE (insert average value here)
我希望只要table = iis1,column = ServiceQuality的平均值发生变化,adminsum中的平均值就会保持最新状态。
这是我的编码,但似乎我错过了一些东西而且没有用。 它只是插入0值而不是精确的平均值。
有人可以帮我吗?
<?php
require_once('Connections/localhost.php');
mysql_connect("localhost","root","");
mysql_select_db("iis");
// Make a MySQL Connection
$conn = mysql_connect('localhost','root','');
$query = "SELECT AVG (ServiceQuality) AS average from iis1";
$result = mysql_query($query) or die(mysql_error());
$query1 = "UPDATE adminsum SET avevalue='average' WHERE aname='SERVICEQUALITY'";
$result1 = mysql_query($query) or die(mysql_error());
if (!mysql_query($query,$conn))
{
die('Error: ' . mysql_error());
}
mysql_close($conn)
?>
答案 0 :(得分:1)
您可以使用子查询在一个步骤中实现此目的。
将您的查询更改为:
update adminsum
set avevalue = ( select avg(ServiceQuality) from iis1 )
where aname = 'SERVICEQUALITY'