我可以使用Eloquents活动记录创建此查询还是需要使用查询生成器?
SELECT
*
FROM
chat
inner join chat_member as member1
on member1.chat_id = chat.chat_id
inner join chat_member as member2
on member2.chat_id = chat.chat_id
WHERE
member1.chat_member_id = $member1ID
and member2.chat_member_id = $member2ID
答案 0 :(得分:1)
WhereHas()
功能是从关系查询中过滤。
确保您拥有Chat
和Member
模型。
并且Chat
模型具有members()
关系。
然后您可以按照以下步骤实现mysql查询。
Chat::whereHas('members', function ($query) {
$query->where('chat_member_id', $member1ID);
})
->whereHas('members', function($query) {
$query->where('chat_member_id', $member2ID);
})
->get();
更新,我修复了语法问题