添加从db获取的数字

时间:2017-03-31 14:54:23

标签: php mysql laravel

我从数据库收集数据,数据基于用户ID,即我根据用户ID从数据库表中选择数据。现在所选结果有一些值(数字);如何检查该数字的总和是否等于某个数量?

使用Laravel 5.4,我按如下方式查询我的数据库:

 $money = $DBTable::where('id', Auth::user()->id)->get();

现在我有一个名为cash的专栏如何获得现金列的总和? 什么是代码,因为结果是一个对象我做一个foreach循环

 foreach ($money as $key => $value) {
     count($money->cash);
 }

这将返回值的数量:

 foreach ($money as $key => $value) {
     echo $earn->earned_amount + $earn->earned_amount;  
 }

这会将个人价值加起来,所以请有人告诉我这是怎么做的吗?

1 个答案:

答案 0 :(得分:0)

有两种方法可以做到这一点:

  1. “查询”构建器方式(https://laravel.com/docs/5.4/queries#aggregates

    DB :: table('表名') - >其中(' user_id',Auth :: user() - > id) - > sum(&# 39;现金&#39);

  2. 雄辩的方式(https://laravel.com/docs/5.4/collections#method-sum

    验证::用户() - > cashTransactions->摘下('现金') - >总和('价格&#39);

  3. 我假设您的表$ DBTable附加了一个模型,并且您在表的模型和用户模型之间定义了关系

    要定义您的关系:

    用户模型中的

    public function cashTransactions()
    {
         return $this->hasMany('App\CashTransactions');
    }
    
    CashTransactions模型中的

    public function user()
        {
             return $this->belongsTo('App\User');
        }
    

    编辑:您还可以使用相同的模型(自我关系)在模型中定义关系