比方说,我希望有一个别名表作为我的DB::table
(
SELECT A, B, C
FROM TABLE
WHERE D = 'xx'
) custom_table如何将其转换为雄辩的DB::table?
我试过了
DB::table(
DB::select(
DB::raw(
SELECT * FROM (SELECT A, B, C FROM TABLE WHERE D = :param1) AS custom_table
),
[ "param1" => "xx" ]
)
)但这似乎给了我
ErrorException:数组到字符串转换
发布于 2020-03-11 13:20:01
将其视为两个不同的查询生成器,并将它们的绑定合并如下:
$xx = 'xx';
$innerQuery = DB::select('A','B','C')->table('TABLE')->where('D', '=',$xx);
$mainQuery = DB::table(DB::raw('(' . $innerQuery->toSql() . ') as custom_table'))
->mergeBindings($innerQuery)
->groupBy('custom_table.C')
->get();这还将帮助您零售$innerQuery构建器实例,供您以后使用,正如您在问题中提到的那样。
https://stackoverflow.com/questions/60636394
复制相似问题