内联的 sql 语句怎么优雅的用 ORM 写出来

我写了一个冗余的字段 type 如果不用冗余的话 就查询
buy_type =1

       $list = MemberDecorateKnapsack::where([
            ['member_id', '=', $member_id],
            ['end_time', '>', time()],
            ['type', '>', $type],
        ])
            ->orderByDesc('id')
            ->select()->get();

sql语句是这样子写就可以不冗余字段了..在orm中如何写优雅的写出来.

SELECT *
FROM member_decorate_knapsack as d
INNER JOIN goods_decorate as g
ON member_id = 6674124703403081728 and d.decorate_id = g.id and buy_type =1

```

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 2

join 功能 Laravel 是有相应支持的。查询构造器:joins
另外我倾向于使用关联关系解决这个问题,join 在数据量大的情况下还是有点开销的 查询已存在的关联

3年前 评论

$query = Table->select();

if($member_id) { $query->where('member_id'); }else{ $query->where('type'); }

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!