问题:
在项目开发中遇到问题,要查询的一张主表 post 中有两个字段都关联了 user 表的 id ,需要取出 user 的 user_name 字段,那么应该怎么查询呢?
解决:
$posts_list = M()
->table('gc_post P')
->join('gc_user U ON P.author_id=U.id')
->join('gc_user U_M ON P.mentor_id=U_M.id')
->field('P.id, P.title, U.user_name as author_name, U_M.user_name as mentor_name,')
->order('P.gc_order desc')
->select();
这里是在 ThinkPHP3.2.3 下开发,给一张表取不同的别名,多次 JOIN 查询就可以正常取到数据了。