首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在数据库中的一列中添加所有值

问如何在数据库中的一列中添加所有值
EN

Stack Overflow用户
提问于 2019-03-08 09:20:06
回答 2查看 391关注 0票数 1

我得到了一个查询代码,它从数据库中获取所有数据,这是我的数据库中的int,然后我使用同时获得所有数据,然后声明一个总变量,它将显示总价值。为了前夫。我的数据库中有5和2,所以输出应该是7,但是输出是52,这是作为文本而不是int添加的。

代码语言:javascript
复制
 <?php
$st='SELECT rating FROM rating;';
$t=mysqli_stmt_init($conn);
mysqli_stmt_prepare($t,$st);
mysqli_stmt_execute($t);
$res=mysqli_stmt_get_result($t);
while($rop=mysqli_fetch_assoc($res)){
    $total=0;
 $total+=$rop['rating'];
 echo $total;
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-03-08 09:22:02

您可以直接使用MySQL的SUM()函数:

代码语言:javascript
复制
SELECT sum(rating) as total from rating

此查询将直接给出所有列值的和。

因此,最终代码应该是:

代码语言:javascript
复制
$st='SELECT sum(rating) as total from rating';
$t=mysqli_stmt_init($conn);
mysqli_stmt_prepare($t,$st);
mysqli_stmt_execute($t);
$res=mysqli_stmt_get_result($t);
$total=0;
while($rop=mysqli_fetch_assoc($res)){
 $total = $rop['total'];
}
 echo $total;
票数 0
EN

Stack Overflow用户

发布于 2019-03-08 09:22:43

将查询更改为

代码语言:javascript
复制
$st='SELECT rating FROM rating;';

至

代码语言:javascript
复制
$st='SELECT sum(rating) as total_sum FROM rating;';

也变了

代码语言:javascript
复制
while($rop=mysqli_fetch_assoc($res)){
    $total=0;
 $total+=$rop['rating'];
 echo $total;
}

至

代码语言:javascript
复制
$total = mysqli_fetch_assoc($res)['total_sum'];
echo $total;
  • 此外,使用与表名相同的列名也不是一个好做法。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55060078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档