这是我的语句,用于提取用户添加的所有好友数据:
$q = $dbc -> prepare("SELECT a.* FROM accounts a INNER JOIN friends fr ON (a.id = fr.friend_id) WHERE fr.id = ?");
$q -> execute(array($details['id']));
现在这基本上是id在朋友表中匹配的地方,拉出朋友id和所有相关数据。
我正试图实现一个朋友在线页面,以及,我将如何测试,看看是否在帐户列为friend_id匹配一个特定的标准?
这是我如何拉出所有在线的用户…
$online_users = time() - 900;
$q = $dbc -> prepare("SELECT * FROM accounts WHERE last_active > ? && id != ? ORDER BY id");
$q -> execute(array($online_users, $details['id']));
SELECT a.*
FROM accounts AS a
JOIN friends AS f ON (a.id = f.friend_id)
WHERE f.id = ?
AND a.last_active > ?
ORDER BY id
您不需要在a.id
上重复条件,因为连接强制它。