作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个名为“Positions”的表,我正在尝试从中获取特定信息。举个例子:
Position ID Person
4 Joe
5 Mary
4 Mary
6 Shawn
4 Brad
4 Ken
8 Ken
请注意,一个人可以有多个职位 ID。
我需要提取职位 ID 等于 4 的所有人员的姓名,但他们也不能拥有除 4 之外的其他职位 ID。
我尝试创建职位 ID 不为 4 的所有用户的列表,然后说我不想要该列表中的任何用户。逻辑是,这将删除 ID 不为 4 的人员,以及 ID 为 4 但也具有除 4 之外的职位 ID 的用户。注意,这是在 MySQL 中,我对它相当陌生,但我想象要遵循的 SQL 逻辑。
SELECT
Person
FROM
Positions
WHERE Person NOT IN
(
SELECT Person
FROM
Positions
WHERE
Position_ID <> 4
)
我希望结果只显示 Joe 和 Brad
无论我做得多么简单,我的结果始终没有得到任何返回。
最佳答案
首先,您正在对“Persons”执行 SELECT。您有两列,分别名为“职位 ID”和“人员”。从那开始
SELECT * FROM Positions WHERE person NOT IN (SELECT person WHERE position_id != 4);
关于mysql - 查询时使用 NOT IN 和 NOT EQUAL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57084658/
我是一名优秀的程序员,十分优秀!