问题:
在项目开发中遇到问题,要查询的一张主表 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
查询就可以正常取到数据了。