如何为我的 Laravel eloquent DB::table 选择别名表?

新手编码器

说,我想有一个别名表作为我的 DB::table

(
    SELECT A, B, C 
    FROM TABLE
    WHERE D = 'xx'
) custom_table

如何将其转换为 Eloquent 的 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: 数组到字符串的转换

罗纳克·多特

将其视为 2 个不同的查询构建器并合并它们的绑定,如下所示:

$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正如您在问题中提到的,这也将帮助您零售构建器实例以供以后使用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

laravel如何将查询生成器DB :: table(..)与DB :: connection()结合使用

如何在Laravel / Eloquent中别名多态表

使用Laravel Eloquent选择多个表

使用DB :: raw在Laravel Eloquent select中获取驼峰式别名

Laravel:如何为列名加上别名

如何为laravel项目设置phpUnit别名?

Laravel Eloquent,在哪里有我的查询中应用选择

Laravel Eloquent:如何形成“选择不重复计数”请求?

使用Laravel Eloquent选择并计数

如何在Laravel Eloquent中调用DB函数并使用分页?

讨论:Laravel Eloquent VS DB查询附加

Laravel / Eloquent-查询-按关系选择

Laravel DB Join带有星号和别名选择

Laravel Eloquent,仅选择存在关系的行

Laravel雄辩的别名表

使用Eloquent Where逃离Laravel DB:raw查询

Laravel Eloquent:如何从多个表中进行选择

Laravel eloquent 选择数据仅特定术语

如何在laravel中使用eloquent或DB Facade从单个表单插入多个表

我可以在 Laravel eloquent 模型中放置一个变形贴图“别名”吗?

Laravel Eloquent 选择要查找的模型

Laravel eloquent DB 播种机和数组转换

如何在laravel eloquent中为左连接表设置别名

使用关系选择 Laravel Eloquent 中的字段

如何在 eloquent laravel 中使用别名编写 SQL 查询?

如何为我的 Laravel 自定义包的控制器创建别名

如何在 Laravel Eloquent 中将 Table 加入 Table

Laravel Eloquent 如何为数据透视表选择使用条件“where”

Laravel,如何选择,db 字段