我有一个以Eloquent Form
存储的Object结构{"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_quantity组合在一起,它具有相同的item_id和item_color以及以表格形式显示。
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();
这是我的第一个已经解决的查询:
答案 0 :(得分:1)
$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时你必须用反引号包装它。