Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 仅当存在一组特定行时才查询匹配字段的值_Mysql_Sql_Select - Fatal编程技术网

Mysql 仅当存在一组特定行时才查询匹配字段的值

Mysql 仅当存在一组特定行时才查询匹配字段的值,mysql,sql,select,Mysql,Sql,Select,也就是说,假设我有一张人员和他们携带的物品的表格——让我们调用id、personid和itemid列。我只想找到携带所有给定物品的人;也就是说,行具有给定值集的itemid的personid 我这样做的好方法是什么 SELECT personid, item FROM items WHERE itemid IN (1, 2, 3) 将1、2、3更改为用逗号分隔的ItemID 如果您只关心personid,即不关心他们拥有的物品,那么以下内容可能会更好地为您服务: SELECT DISTINCT

也就是说,假设我有一张人员和他们携带的物品的表格——让我们调用id、personid和itemid列。我只想找到携带所有给定物品的人;也就是说,行具有给定值集的itemid的personid

我这样做的好方法是什么

SELECT personid, item FROM items WHERE itemid IN (1, 2, 3)
将1、2、3更改为用逗号分隔的ItemID

如果您只关心personid,即不关心他们拥有的物品,那么以下内容可能会更好地为您服务:

SELECT DISTINCT personid FROM items WHERE itemid IN (1, 2, 3)

为了给这个恰当的结束语,这里有一个作为常规“答案”的onedaywhen的答案评论:


这难道不返回拥有任何给定侦听项但不是全部的人吗?有没有一种好方法可以获得拥有所有指定项的人?请停止在标题中写入标记。您需要的关系运算符是提供所有零件的供应商。是的,这就是我要找的。谢谢你给我起了个名字。