我可以使用 Eloquent 创建此查询还是需要查询生成器?
Can I create this query with Eloquent or do I need Query Builder?
我可以使用 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
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();
更新,我修复了语法问题
我可以使用 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
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();
更新,我修复了语法问题