sql - 在 SQL 中查找另一个表的特定列中不存在的值
问题描述
(第一次发帖,如有垃圾请见谅)
我有两张桌子正在工作——为了这个问题,我们将使用食物搭配。
表A
A 栏:食物类型 -豌豆、牛肉、蛋糕、奶酪
B 栏:数量 - 11、9、4、6
表 B
A 栏:食物类型 -豌豆、牛肉、蛋糕、奶酪
B 栏:数量 - 11、9、4、6
C 栏:适合 -胡萝卜、奶酪、奶酪、豌豆
我需要找到表 A 中存在的值,但不是特别在表 B 的“GOES WELL WITH”列中。所以在这种情况下,它会返回牛肉。我似乎不能使用 NOT EXISTS,因为牛肉仍然出现在表 B 中(在食物类型下)。是否可以对代码进行修改,以查看特定列中是否存在值?
解决方案
我想你可能会简单地使用 NOT IN 然后 -
SELECT FOOD_TYPE
FROM TABLEA
WHERE FOOD_TYPE NOT IN (SELECT DISTINCT Goes_well_with
FROM TABLEB)
推荐阅读
- pandas - pandas barchart 为条形图着色以匹配列数据
- typescript - TypeScript:使用 keyof T 获取通用对象属性值的类型
- php - PHP - Phalcon致命错误:未捕获的错误:未在中找到类“Phalcon\Db”
- firebase - 是否可以设置 Firebase 存储规则来检查 Firebase Firestore 中的参数?
- javascript - Mac 上的 Visual Studio Code 上出现无法解释的 Typescript 编译器错误
- jquery - 未捕获的 SyntaxError:JQuery UI Datepicker 中分配的左侧无效
- javascript - Leaflet-Routing-Machine:TypeError:无法读取未定义的属性“getSize”
- python - 通过 selenium 获取此元素属性
- c# - 使用 C# 和 html 将多个图像添加到 .NetCore 中的表
- ssl - 如何解决“NSS 错误 -12276 (SSL_ERROR_BAD_CERT_DOMAIN)”