我有以下代码
$getFriendQuery = "SELECT DISTINCT U.username FROM users as U INNER JOIN test_friends as F on U.Id = F.user_id WHERE F.friend_id = '{$userID}' && F.active=1";
$getFriendResult = mysql_query($getFriendQuery, $conn) or die (mysql_error());
$friendName = "";
while($getFriendFetch = mysql_fetch_assoc($getFriendResult)){
$friendName .= $getFriendFetch['username'] . ", ";
}
$getFriendQuery = "SELECT u.username FROM users u INNER JOIN test_friends f ON u.id = f.user_id WHERE (f.friend_id = '{$userID}' AND active=1) OR (f.user_id = '{$userID}' AND active=1)";
$getFriendResult = mysql_query($getFriendQuery, $conn) or die (mysql_error());
while($getFriendFetch = mysql_fetch_assoc($getFriendResult)){
$friendName .= $getFriendFetch['username'] . ", ";
}
if (!empty($friendName)){
echo "Your friends: " . $friendName ;
} else {
echo "You do not have any friends yet";
}
?>
我的代码需要2个查询才能获得“好友列表”.有没有办法执行1个查询,并可以检索所有朋友列表?
更多信息:
我有两张桌子. “用户表”和“test_friends”表.用户表有:
id表示用户ID =>数据类型int(11)
username => data type varchar(256)
Test_friends表有:
user_id表示用户ID =>数据类型int(11)
friend_id => data type int(11)
active => tinyint