我可以使用一些SQL的帮助。我需要做的一个网站的一部分是你可以添加/删除用户的商店的地方。现在,获取已经分配给某个用户的商店的查询很简单,但我似乎无法弄清楚如何做相反的事情。意味着将所有尚未添加到用户的内容。
所以这里有一个表格的模板。
user_id store_id
1 11
1 12
1 14
2 15
4 16
如果我运行它(1将是php变量):SELECT store_id FROM store_user WHERE user_id= 1;
我得到了这样的结果:
store_id
11
12
14
剩下的就像:SELECT * FROM store except where id = 11,12,14
。
如果有人能帮助我完成最后一部分并且最好将其全部放入1个查询中,我将不胜感激。
编辑:对于那些在类似问题上遇到困难的人来说,这最终是有效的:
SELECT * FROM store where id NOT IN (select store_id from store_user where user_id = 1)
感谢大家的帮助!
答案 0 :(得分:0)
使用NOT IN
SELECT * FROM store where
id NOT IN (select store_id from store_user where user_id = 1)
答案 1 :(得分:0)
您可以使用 IN 或 NOT IN
/profile/my-uploads