3 回答

TA贡献1828条经验 获得超3个赞
主要是原始查询:
DB::table('item_details')->selectRaw('GROUP_CONCAT(...) INTO @sql')->get();
DB::statement('SET @sql = CONCAT(...)');
DB::statement('PREPARE stmt FROM @sql');
DB::statement('EXECUTE stmt');
DB::statement('DEALLOCATE PREPARE stmt');
尝试这个:
DB::table('item_details')->selectRaw('GROUP_CONCAT(...) INTO @sql')->get();
$sql = DB::selectOne('select @sql')->{'@sql'};
ItemDetails::select('item_number', DB::raw('SUM(quantity) as total_quantity'))
->selectRaw($sql)
->groupBy('item_number')
->get();

TA贡献1810条经验 获得超5个赞
这似乎是重复的(如何从mysql中的表创建选择动态字段?)。
您在另一个线程上请求并获得了帮助,但是在这里询问如何实际实现他们在那里给出的答案。(我可能会补充说,在询问方面相当好斗。)
通常最好是要求对所得到的代码进行澄清,以作为给出问题的答案。
- 3 回答
- 0 关注
- 392 浏览
添加回答
举报