0

次のようにするにはどうすればよいでしょうか。

$results = $DB->query("SELECT * FROM users WHERE id!='{$id}' ");

コーディングもわからない私でも、

$a = $DB->query("SELECT * FROM friends WHERE(someone is not friends with you)' ");

友達の列: user_idfriends_id

4

4 に答える 4

0

NOT IN を使用

ID NOT IN (IDs OF FRIEND)

$DB->query("SELECT * FROM user AS User WHERE User.id NOT IN (select * from friends where user_id = User.id)");
于 2013-01-22T11:59:19.057 に答える
0
$DB->query("SELECT x.* FROM users x WHERE x.id NOT IN (myid, friendids)");
于 2013-01-22T12:00:55.497 に答える
0

友達ではない人を取得する必要があります。右?したがって、あなたのuser_id$my_idです。次に、user_idフィールドに user_id 値 ($my_id) が含まれていない友人からfriend_IDを選択できます。次に、取得した friend_ID から、Users テーブルからユーザーを選択できます。これを使って:

$DB->query(SELECT * FROM users WHERE id IN(select friend_id FROM friends WHERE user_id != {$my_id}))

動作します。:)

于 2013-01-22T12:09:22.813 に答える
0

データベースの正確な構造を知らないと、質問が少し難しくなりますが、誰かがあなたの友達である場合、またはあなたが彼の友達である場合、誰かがあなたの友達であると言われるという考えに基づいて、追加しなかった人を選択する必要があります友達も彼らもあなたを追加しませんでした。

このようなクエリが役立ちます。

"SELECT * FROM users WHERE users.id NOT IN (select * from friends where user_id != '{$your_id}' AND friend_id != '{$your_id}')"

于 2013-01-22T12:26:52.980 に答える