gpt4 book ai didi

mysql - Laravel 中的 WHERE 子句后加入

转载 作者:行者123 更新时间:2023-11-29 11:33:32 25 4
gpt4 key购买 nike

我正在执行一个查询,其中所需的输出首先应用where子句,然后在我想要执行正确的连接之后。我有这个查询,但它先执行连接,然后执行where。感谢您提供的任何帮助。

这是我的查询

$friends = friend_list::where('friend_lists.user_id', '=', $id)
->rightJoin('users as u1', 'u1.id', '=', 'friend_lists.user_id2')
->where('friend_lists.user_id2','!=',$id)
->where('u1.id','!=',$id)
->orwhere('status',null)
->get();

编辑:我正在实现好友请求部分。
其中用户表包含...user(id,name,..,..)friend_list(userid,userid2,status)friend_list 中显示与其他 friend 的状态。我确实与 friend_list 进行了右连接。如果状态为 null,则该用户当前没有任何行user.so状态为null,显示添加 friend .so null 值很重要,因此与用户表

右连接

最佳答案

将 WHERE 更改为另一个 JOIN 条件

$friends = friend_list::rightJoin('users as u1', function($join) {
$join->on('u1.id', '=', 'friend_lists.user_id2')
->where('friend_lists.user_id', '=', $id);
})
->where('friend_lists.user_id2','!=',$id)
->where('u1.id','!=',$id)
->orwhere('status',null)
->get();

关于mysql - Laravel 中的 WHERE 子句后加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36998251/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com