我有两张桌子
FNF
id
from_ID
to_ID
用户
id
name
当我发送好友请求时,我的用户表中的id转到from_ID。当其他人发送好友请求时,他的id转到from_ID,我的id转到to_ID。
我从 fnf 表中得到了我的所有好友ID,如下所述
$getmyfriends=mysqli_query($con, "SELECT * FROM fnf WHERE (from_ID='$logged' || to_ID ='$logged')");
$getmyfriendsnum=mysqli_num_rows($getmyfriends);
if($getmyfriendsnum !=0){
while($getmyfriendsrow=mysqli_fetch_assoc($getmyfriends)){
$from_ID=$getmyfriendsrow['from_ID'];
$to_ID=$getmyfriendsrow['to_ID'];
if($from_ID==$logged){
$myf=$to_ID;
}else if($to_ID==$logged){
$myf=$from_ID;
}
}
}
现在,我正在尝试从表用户
中获取我的非朋友ID$getalluser=mysqli_query($con, "SELECT * FROM `users` WHERE `id`!='$myf' ");
$getallusernum=mysqli_num_rows($getalluser);
if($getallusernum !=0){
while($getalluserrow=mysqli_fetch_assoc($getalluser)){
$nonfriendid=$getalluserrow['id'];
echo $nonfriendid."</br>";
}
}
我没有得到非朋友的真实身份。即使我尝试将第二个查询放入第一个while循环中,这也很糟糕,实际上,我也不会理解INNER JOIN。
谁能让非朋友的身份......进入第二次循环。
答案 0 :(得分:0)
select
`id`
from
`users`
where
`id`
not in
(select
`from_ID`
from
`fnf`)
and
`id`
not in
(select
`to_ID`
from
`fnf`)