Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带sum()的Laravel集合groupBy()_Laravel_Collections_Laravel 5.6_Laravel Collection - Fatal编程技术网

带sum()的Laravel集合groupBy()

带sum()的Laravel集合groupBy(),laravel,collections,laravel-5.6,laravel-collection,Laravel,Collections,Laravel 5.6,Laravel Collection,是否可以按列上带有sum()的laravel集合分组? 该集合的外观如下所示: [ {id: 1, name: A, quantity: 1, price: 20, options:[{id:10,name:AC}{id:13,name:AB}]}, {id: 1, name: A, quantity: 5, price: 15, options:[{id:20,name:AV},{id:30,name:AZ}]}, {id: 1, name: A, quanti

是否可以按列上带有sum()的laravel集合分组? 该集合的外观如下所示:

    [
    {id: 1, name: A, quantity: 1, price: 20, options:[{id:10,name:AC}{id:13,name:AB}]},
    {id: 1, name: A, quantity: 5, price: 15, options:[{id:20,name:AV},{id:30,name:AZ}]},
    {id: 1, name: A, quantity: 10, price: 15, options:[{id:20,name:AV},{id:30,name:AZ}]},
    {id: 1, name: A, quantity: 2, price: 10, options:[]},
    {id: 1, name: A, quantity: 4, price: 10, options:[]}
    ]
  [
    {id: 1, name: A, quantity: 1, price: 20, options:[{id:10,name:AC}{id:13,name:AB}]},
    {id: 1, name: A, quantity: 15, price: 15, options:[{id:20,name:AV},{id:30,name:AZ}]},
    {id: 1, name: A, quantity: 6, price: 10, options:[]},
    ]
第2行和第3行是相同的,我需要求和()数量

第4行和第5行是相同的,我需要求和()数量

结果应该是这样的:

    [
    {id: 1, name: A, quantity: 1, price: 20, options:[{id:10,name:AC}{id:13,name:AB}]},
    {id: 1, name: A, quantity: 5, price: 15, options:[{id:20,name:AV},{id:30,name:AZ}]},
    {id: 1, name: A, quantity: 10, price: 15, options:[{id:20,name:AV},{id:30,name:AZ}]},
    {id: 1, name: A, quantity: 2, price: 10, options:[]},
    {id: 1, name: A, quantity: 4, price: 10, options:[]}
    ]
  [
    {id: 1, name: A, quantity: 1, price: 20, options:[{id:10,name:AC}{id:13,name:AB}]},
    {id: 1, name: A, quantity: 15, price: 15, options:[{id:20,name:AV},{id:30,name:AZ}]},
    {id: 1, name: A, quantity: 6, price: 10, options:[]},
    ]
你可以展示这个

$invoices=Invoice::withSum('items:price')->get();

这些都是雄辩的模型吗?如果是这样,最好从数据库查询级别执行。Yes是一个有说服力的集合。该选项是一个关系,我不知道如何按关系内容查询组。您能让ID(或任何其他字段)对于“相同”行是唯一的吗?这样,您就可以按集合进行分组标识。您可以通过一些收集处理来存档此文件,但我不知道是否存在用于此文件的唯一方法。我可以编辑数据库,但除了生成一系列选项之外,还有什么可以使其唯一?如果我这样做了,那不是违背了联合表交易选项的目的吗?这回答了你的问题吗?