MySQL查询可将两列和三组的值相加三分之一

时间:2019-07-09 18:39:27

标签: php mysql

我想在PHP中使用mySQL创建一个查询,该查询将两个表列加在一起,然后使用第三列将结果分组。

PHP用于以JSON格式显示数据。

例如,如果我有以下数据:

enter image description here

我期望以下JSON响应:

[
    {"name": "Jake","Value": " $25.50 "},
    {"name": "Mary","Value": " $14.05 "}
]

到目前为止,这是我的工作,我不了解用于汇总两个单独的列的值的正确语法是什么:

$sql =  "SELECT name, 
        sum(Value1,Value2) as VALUESUM
        from TableName
        group by name
        Order by VALUESUM DESC";

2 个答案:

答案 0 :(得分:1)

根据您的预期结果,似乎您需要在两列之间为每行加一个(而不是总和)

    SELECT name, 
    Value1 + Value2  as VALUETOT
    from TableName
    Order by VALUESUM DESC

否则,如果您想要每个名称的总和,则可以使用

    SELECT name, 
    sum(Value1 + Value2 )  as VALUESUM
    from TableName
    GROUP BY name 
    Order by VALUESUM DESC

答案 1 :(得分:0)

我想你想要的是

  $sql =  "SELECT name, 
    sum(Value1,Value2) as VALUESUM
    from TableName
    group by name
    Order by VALUESUM DESC";

  //Fetch the rows from table
  $result = $dblink->query($sql);

  //Initialize array variable
  $jsondata = array();

//Fetch into associative array
while ( $row = $result->fetch_assoc())  {
  $jsondata[]=$row;
 }

//Print array in JSON format
echo json_encode($jsondata);

这将为您提供sql结果的json数据。 当然,您必须使用自己的变量来熟练掌握代码