我正在查询给定两个用户的共同朋友.下面的查询应该在大多数情况下完成,而友谊表应该是不言而喻的,包含user_id和friend_id.
SELECT `users`.* FROM `users`
INNER JOIN `friendships` `a` ON `users`.`id` = `a`.`friend_id`
INNER JOIN `friendships` `b` ON `users`.`id` = `b`.`friend_id`
WHERE `a`.`user_id` = 1 AND `b`.`user_id` = 2
Run Code Online (Sandbox Code Playgroud)
令我困惑的是如何编写这种语义ActiveRecord.使用ActiveRecord,您可以加入关联,但只能加入一次.那么你如何尽可能明白地写这个ActiveRecord呢?