4

你如何给一个雄辩的模型起别名?例如,如果我有如下 SQL 查询:

SELECT one.name
     , one.id
     , one.name AS sortkey1
     , CAST(NULL AS UNSIGNED) AS sortkey2
     , CAST(NULL AS UNSIGNED) AS sortkey3
 FROM locations AS one
WHERE one.parent_id = 0
UNION ALL
....

在我的存储库中,我会有以下内容:

$first = $this->model->where('one.parent_id', '=', 0)
                     ->select('one.name'
                           , 'one.id'
                           , 'one.name AS sortkey1'
                           , DB::raw('CAST(NULL AS UNISIGNED) AS sortkey2')
                           , DB::raw('CAST(NULL AS UNISIGNED) AS sortkey3'));

那么如何给模型起别名。在上面的例子中,模型映射了位置表,在我雄辩的查询中,我想给它取别名one而不是locations

4

1 回答 1

7

你可以from这样使用:

$first = $this->model->from('locations as one')
                     ->where('one.parent_id', '=', 0)
                     ->select('one.name'
                           , 'one.id'
                           , 'one.name AS sortkey1'
                           , DB::raw('CAST(NULL AS UNISIGNED) AS sortkey2')
                           , DB::raw('CAST(NULL AS UNISIGNED) AS sortkey3'));
于 2016-02-13T17:23:36.433 回答