我有一个以口才形式存储的对象结构
{"item_id": "2",
"item_color": "Black",
"item_size": "L",
"item_Quantity": "5",},
{"item_id": "2",
"item_color": "Black",
"item_size": "M",
"item_Quantity": "5",},
{"item_id": "2",
"item_color": "Black",
"item_size": "S",
"item_Quantity": "5",},
{"item_id": "2",
"item_color": "White",
"item_size": "S",
"item_Quantity": "5",},
我想要实现的是将具有相同item_id和item_color的所有item_quantity合并,并以这种形式在Table中显示.
ItemID ItemColor L-M-S Total
2 Black 5-5-5 15
2 White 5 5
这是我当前的查询
$items = DB::table('item')
->select(DB::raw("item_id,item_color,GROUP_CONCAT(item_size SEPARATOR '-') as ItemSize,GROUP_CONCAT(item_Quantity SEPARATOR '-') as Quantity,sum(item_Quantity) as TOTAL"))
->groupBy('item_id','item_color')
->get();
这是我已解决的第一个查询:
解决方法:
$items = DB::table('item')
->select(DB::raw("item_id,item_color,GROUP_CONCAT(item_Quantity SEPARATOR '-') as `L-M-S`,sum(item_Quantity) as TOTAL"))
->groupBy('item_id','item_color')
->get();
我希望这是您所需要的,请记住要在列名中使用hypen时,必须用反引号将其包裹起来.
标签:php,laravel,laravel-4
来源: https://codeday.me/bug/20191014/1912419.html