在PHP MySQL查询中遇到麻烦

时间:2013-01-22 11:50:50

标签: php mysql

我们如何做以下事情?

$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 个答案:

答案 0 :(得分: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)");

答案 1 :(得分:0)

$DB->query("SELECT x.* FROM users x WHERE x.id NOT IN (myid, friendids)");

答案 2 :(得分:0)

你需要得到不是你朋友的人。对? 因此,您将 user_id 设为 $ my_id 。然后,您可以从朋友中选择 friend_ID user_id 字段不包含您的user_id值($ my_id)。然后从检索到的friend_ID中,您可以从Users表中选择用户。 使用此:

  

$ DB->查询(SELECT * FROM users WHERE id IN(select friend_id FROM   朋友WHERE user_id!= {$ my_id}))

会工作吗? :)

答案 3 :(得分:0)

不知道你的数据库的确切结构会让你的问题变得有点诡计,但是如果有人被认为是你的朋友,当他是你的朋友或你是他的朋友时,你必须选择那些你做过的人。添加为朋友,他们也没有添加你。

这样的查询可以帮到你。

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