当前在Laravel中运行查询,但预期的输出不正确。所以,看来我仍然不知道使用where/orwhere
的正确方法。我在下面有两个查询;Laravel:在查询中使用Where和orWhere的正确方法
QUERY图1(a)
//total friends
$user = Friend::select('friend_sender', 'friend_receiver')
->where('friend_sender', Input::get("user_id"))
->orwhere('friend_receiver', Input::get("user_id"))
->where('friendship_status','friends')->count();
QUERY图1(b)
//total friends
$user = Friend::select('friend_sender', 'friend_receiver')
->where('friendship_status','friends')
->where('friend_sender', Input::get("user_id"))
->orwhere('friend_receiver', Input::get("user_id"))->count();
这两个查询产生不同的结果。 QUERY 1 (a)
结果是0
,这在我自己的例子中是正确的,QUERY 1 (b)
结果是1
这是错误的。
现在,我认为其他WHEREs
应该在WHERE/orWHERE
陈述之后。我写了另一个查询,但没有得到所需的结果。
$user = Friend::select('friend_sender', 'friend_receiver')
->where('friend_sender',Input::get("user_id"))
->orwhere('friend_receiver',Input::get("user_id"))
->where('sender_follow', 'yes')
->orwhere('receiver_follow', 'yes')
->where('friendship_status', 'friends')->count();
我的问题是,我该如何正确使用WHERE/orWHERE
?