我在查询中收到错误,但我无法检测到问题的根源。
以下是查询: -
$query = "SELECT useraccount.Username, tariff.Name as tariffs,
sum(energyconsumption.ElecEnergy)
FROM useraccount
INNER JOIN tariff
ON useraccount.tariffs = tariff.id
INNER JOIN energyconsumption
ON energyconsumption.User = useraccount.id
WHERE Date = CURRENT_DATE
GROUP BY useraccount.Username, tariff.Name as tariffs";
在查询之后,我将代码存储在一个数组中:
$result = mysqli_query($conn,$query);
$r = array();
if($result->num_rows){
while($row = mysqli_fetch_array($result)){
array_push($r, array( 'Username' => $row['Username'],
'TariffName' => $row['tariffs'], 'ElecConsump' => $row['ElecEnergy']
));
}
} echo json_encode(array('results' => $r));
我在以下行中收到错误:if($ result-> num_rows)
这是执行查询时的输出:
注意:尝试在第22行的C:\ xampp \ htdocs \ Project \ Client \ newone.php中获取非对象的属性 {"结果":[]}
请注意:
这是我最初的输出:
{"results":[{"Username":"absc868","TariffName":"s1","ElecConsump":"2000"},
{"Username":"absc868","TariffName":"s1","ElecConsump":"1900"}]}
但是我已经在上面写了这个新查询,我试图产生这个输出 我试图产生以下输出: = {"结果":[{"用户名":" absc868"," TariffName":" s1",& #34; ElecConsump":" 3900"}
就是这样,一个结果集只有1个条目,用户名,资费和电子邮件,而不是用户名,关税和电子邮件的2个条目
再次感谢所有阅读并参与此主题的人
答案 0 :(得分:1)
一个问题是.scale
中的as
。我建议您使用表别名:
GROUP BY