首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >两个日期之间的值

问两个日期之间的值
EN

Stack Overflow用户
提问于 2017-06-06 13:06:52
回答 3查看 5.2K关注 0票数 1

我需要使用Laravel::table对值进行求和,并获得两个日期之间的结果,例如:

日期: 05/30/2016售出:1日期: 05/31/2016售出:2

所以结果应该是:3

这是一个由日期筛选器给出的搜索结果,我做了这样的事情,但没有结果:

代码语言:javascript
复制
DB::table('sales')
 ->where('date',$date_from)
 ->where('date',$date_to)
 ->selectRaw('sum(price)')
 ->selectRaw('id')
 ->groupBy('id')
 ->get(); 
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-06-06 13:13:34

您应该使用whereBetween(),试试这个

代码语言:javascript
复制
DB::table('sales')
->whereBetween('date', [$date_from, $date_to])
->selectRaw('sum(price)')
->selectRaw('id')
->groupBy('id')
->get(); 
票数 1
EN

Stack Overflow用户

发布于 2017-06-06 13:13:01

使用<和>按日期筛选结果:

代码语言:javascript
复制
->where('date', '>', $date_from)
->where('date', '<', $date_to)

或者使用whereBetween()

代码语言:javascript
复制
->whereBetween('date', [$date_from, $date_to])
票数 1
EN

Stack Overflow用户

发布于 2017-06-06 13:34:21

您应该使用whereBetween函数,我认为您使用的组是错误的:

代码语言:javascript
复制
DB::table('sales')
        ->whereBetween('date', [$date_from, $date_to])
        ->groupBy('date')
        ->sum('price');

如果日期列的类型为“`DATETIME”,则应使用:

代码语言:javascript
复制
->groupBy(DB::raw("DATE(date)"))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44390838

复制
相关文章

相似问题

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