如何执行结果和行以找到两列的SQL总和?

时间:2018-09-10 22:16:38

标签: php sql

Table 1               Table 2
_________________     ____________________
| ID| Name  |Age |    | ID| Cost  | Date  |
|---|-------|----|    |---|-------|-------|
| 1 | Kirk  | 33 |    | 1 |   10  |  9/10 |
| 2 | Lonzo | 55 |    | 1 |   20  |  7/8  |
| 3 | Dave  | 44 |    | 2 |   12  |  25/7 |
                      | 3 |   5   |  30/4 |
                      | 3 |   5   |  4/10 |

我希望结果是33岁的Kirk,总费用为30,总日期为2 等等。(然后输入他们的名字,所有这些都出现了)

sql语句会是这样吗?

$sql= "SELECT Table1.Name, Table1.ID, Table2.ID, Table1.Age, SUM(Table2.Cost), SUM(Table2.Date)
AS count from Table1, Table2
WHERE Table1.ID = Table2.ID and Table1.Name = (my example here)"
$result = $conn->query($sql);
$Cost = 0;
$Date= 0;
$rec = $result->fetch_assoc();
$Date= $rec{'count'};
$Cost= $rec{'count'};
$Age = $rec{'Age'}

回显“ $ Name,即年龄为$ Age岁的用户,其总费用为$ Cost和$ Date总日期”;

出现错误,说我的变量未定义 那我怎么把它们放到变量里呢?

修改固定 而不是使用sql来查找它,我使用了while循环的结果,该循环一直将一个结果添加到另一个变量中(以计算日期)。成本可以同时在sql(sum)和result中进行。

2 个答案:

答案 0 :(得分:1)

我没有使用sql来查找它,而是使用了while循环的结果,该循环一直将结果添加到另一个变量中(以计算日期)。成本可以同时在sql(sum)和result中进行。

答案 1 :(得分:0)

只使用连接。.

SELECT table2.date ,SUM(cost) AS tatol FROM table1 
JOIN table2 ON table2.id = table1.id
WHERE table1.id = 1