首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用laravel从最后两行输入中获取SUM

使用laravel从最后两行输入中获取SUM
EN

Stack Overflow用户
提问于 2020-04-11 10:04:08
回答 1查看 84关注 0票数 0

我有这样的表:enter image description here

我想从最后两行输入的字段'total‘中获取sum,

这是我的代码:

代码语言:javascript
复制
$data = DB::table('packagings')->where('plant',$pt->plant)->orderBy('id','desc')->limit(2)->sum('total');

但是我的代码从字段'total‘中获取所有的sum

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-11 10:23:25

Mysql将首先从表packagings中将total求和为一条记录,然后从一条记录中提取两条记录。因此它总是返回字段total中所有sum。

采集方式:

代码语言:javascript
复制
$data = DB::table('packagings')->where('plant',$pt->plant)->latest()->take(2)->get()->sum('total');

查询构建器方式:

代码语言:javascript
复制
$sub = DB::table('packagings')->where('plant',$pt->plant)->latest()->take(2);
$data = DB::table(DB::raw("({$sub->toSql()}) AS sub"))->mergeBindings($sub)->sum('total');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61151215

复制
相关文章

相似问题

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