如何使用多个whereBetween对两个不同的记录求和

羽田

我需要比较和汇总两个不同日期的数据。

假设我有4个输入日期

startdate = "2020-11-01",
enddate = "2020-11-30",
compare_startdate = "2020-12-01",
compare_enddate = "2020-12-31",

目前,我的查询只能获取一个whereBetween日期数据,如下所示

当前代码

$raw_data = ChartOfAccount::with(array(
    'journal' => function($query) use ($init)
    {
            $query->selectRaw('*,
            sum(item_journals.debit) as total_debit,
            sum(item_journals.credit) as total_credit,
            sum(item_journals.debit) - sum(item_journals.credit) as net_movement');
            $query->groupBy('chart_of_account_id');
            $query->where('item_journals.deleted_at', null);
            $query->whereBetween('date', array($init['startdate'], $init['enddate']));                
    }
    ))
    ->get();

来自startdate和的当前结果enddate

"total_debit" => "0.00"
"total_credit" => "200.00"
"net_movement" => "-200.00"

来自compare_startdate和的另一个结果示例compare_enddate

 "total_debit" => "0.00"
 "total_credit" => "50.00"
 "net_movement" => "-50.00"

如何从另一个查询结果compare_startdatecompare_enddate以的总和结果startdateenddate

预期结果

"total_debit" => "0.00"
"total_credit" => "150.00"
"net_movement" => "-150.00"

我确实在查询中尝试过类似的操作,但结果不正确

$query->whereBetween('date', array($init['startdate'], $init['enddate']));                
$query->whereBetween('date', array($init['compare_startdate'], $init['compare_enddate']));                
阿卜杜勒·哈基姆(Abdul Hakeem)

嗨,朋友,您可以在下面的where子句中预先使用orWhereBetween,

DB::table('tbl')
  ->Where(function ($query) use ($startdate,$enddate,$compare_startdate,$compare_enddate) {
      $query->whereBetween('date', [$startdate, $enddate]);
      $query->orWhereBetween('date', [$compare_startdate, $compare_enddate] );
})->get();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何用两个不同的表对两列求和

来自分类Dev

Elasticsearch:如何使用两个不同的多个匹配字段?

来自分类Dev

如何使用xslt乘积和求和不同复杂元素的两个不同节点的值?

来自分类Dev

SQL:如何对不同表中的两个值求和

来自分类Dev

Java:如何求和两个长度不同的数组的元素

来自分类Dev

Php Mysqli如何求和两个不同条件的结果

来自分类Dev

对两个不同的类属性求和

来自分类Dev

如何从两个不同的表中获取记录

来自分类Dev

如何使用数据库中的两个不同的记录?

来自分类Dev

使用分页显示来自两个不同模型的记录

来自分类Dev

使用分页显示来自两个不同模型的记录

来自分类Dev

如何使用Google Spreadsheet中的两个条件求和

来自分类Dev

如何使用 SQL 命令对两个值求和或相加

来自分类Dev

如何让两个或多个不同的字体文件在 libgdx 中使用一个通用的 Atlas?

来自分类Dev

如何在Excel 2013中的IF中比较和求和两个单元格的值并使用多个条件

来自分类Dev

如何获得(多个)两个不同行之间的差异?

来自分类Dev

如何使用mongo聚合将两个或多个字段分组以找到不同的字段

来自分类Dev

如何使用 PHPMailer 将多个文件附加到两个不同的电子邮件?

来自分类Dev

如何将两个不同函数的总数求和成一个新函数?

来自分类Dev

如何对两个矩阵求和?

来自分类Dev

PHP,MySQL如何对两个不同日期范围内的数据求和

来自分类Dev

SQL:如何在两个不同的条件上求和相同的值

来自分类Dev

如何从两个不同的表格详细信息中求和?

来自分类Dev

如何将两个盒子自动求和到不同的盒子中?

来自分类Dev

使用xpath中的sum函数求和两个不同的元素

来自分类Dev

Java:如何使两个记录器写入不同的文件(记录器)

来自分类Dev

如何使用两个表的外键记录费用?

来自分类Dev

如果两个或多个键值相同,如何对字典列表中的元素求和

来自分类Dev

如何从json中获取数据求和两个或多个值

Related 相关文章

  1. 1

    如何用两个不同的表对两列求和

  2. 2

    Elasticsearch:如何使用两个不同的多个匹配字段?

  3. 3

    如何使用xslt乘积和求和不同复杂元素的两个不同节点的值?

  4. 4

    SQL:如何对不同表中的两个值求和

  5. 5

    Java:如何求和两个长度不同的数组的元素

  6. 6

    Php Mysqli如何求和两个不同条件的结果

  7. 7

    对两个不同的类属性求和

  8. 8

    如何从两个不同的表中获取记录

  9. 9

    如何使用数据库中的两个不同的记录?

  10. 10

    使用分页显示来自两个不同模型的记录

  11. 11

    使用分页显示来自两个不同模型的记录

  12. 12

    如何使用Google Spreadsheet中的两个条件求和

  13. 13

    如何使用 SQL 命令对两个值求和或相加

  14. 14

    如何让两个或多个不同的字体文件在 libgdx 中使用一个通用的 Atlas?

  15. 15

    如何在Excel 2013中的IF中比较和求和两个单元格的值并使用多个条件

  16. 16

    如何获得(多个)两个不同行之间的差异?

  17. 17

    如何使用mongo聚合将两个或多个字段分组以找到不同的字段

  18. 18

    如何使用 PHPMailer 将多个文件附加到两个不同的电子邮件?

  19. 19

    如何将两个不同函数的总数求和成一个新函数?

  20. 20

    如何对两个矩阵求和?

  21. 21

    PHP,MySQL如何对两个不同日期范围内的数据求和

  22. 22

    SQL:如何在两个不同的条件上求和相同的值

  23. 23

    如何从两个不同的表格详细信息中求和?

  24. 24

    如何将两个盒子自动求和到不同的盒子中?

  25. 25

    使用xpath中的sum函数求和两个不同的元素

  26. 26

    Java:如何使两个记录器写入不同的文件(记录器)

  27. 27

    如何使用两个表的外键记录费用?

  28. 28

    如果两个或多个键值相同,如何对字典列表中的元素求和

  29. 29

    如何从json中获取数据求和两个或多个值

热门标签

归档