MongoDB不支持传统SQL的JOIN操作,要使用MongoDB的聚合管道(Aggregation Pipeline)来实现类似的功能$data = Db::connect('mongo')->name('circle') ->alias('u') ->aggregate([ [ '$lookup' => [ 'from' => 'circle_comments', // 关联的表名 'localField' => 'id', // 主表 circle 的字段 'foreignField' => 'circle_id', // 关联表 circle_comments 的字段 'as' => 'comments' // 关联结果的别名 ] ], [ '$unwind' => [ 'path' => '$comments', // 展开 comments 数组 'preserveNullAndEmptyArrays' => true // 相当于 LEFT JOIN,即使没有匹配的记录也保留主表记录 ] ], [ '$project' => [ 'type' => 1, // 保留主表的 type 字段 'content' => '$comments.content', // 获取关联表的 content 字段 '_id' => 0 // 不显示 MongoDB 默认的 _id 字段 ] ] ]) ->select(); print_r($data);