sql - SQL SELECT ID WHERE 具有相同 ID 的行具有不同的值
问题描述
我需要一些帮助来创建跨行的 SQL 语句。
SELECT SZ.Stammindex AS ID, S.sEbene1, S.sEbene2, S.sEbene3
FROM SuchbaumZuordnung SZ
LEFT JOIN Suchbaum S
ON SZ.gSuchbaumID = S.gID
WHERE (S.sEbene1 IN ('Test1')
AND (S.sEbene2 IN ('Test2') OR S.sEbene2 IS NULL)
AND S.sEbene3 IS NULL)
正如您在屏幕截图中看到的,我选择了 ID=10004 和 ID=10005。但实际上我只希望 ID=10005 出现。如前所述,我正在尝试跨行进行过滤。
我的目标是获取所有 ID,其中所有条件都与“AND”相关联,如下所示:
WHERE (sEbene1 IN ('Test1')
AND (sEbene2 IN ('Test2') *AND* sEbene2 IS NULL)
AND sEbene3 IS NULL)
但这不会返回任何东西。
编辑
我希望你们能帮助我。
解决方案
我怀疑你想要:
SELECT SZ.Stammindex AS ID
FROM SuchbaumZuordnung SZ
WHERE EXISTS (SELECT 1
FROM Suchbaum S
WHERE SZ.gSuchbaumID = S.gID AND
S.sEbene1 IN ('Test1') AND
sEbene2 IN ('Test2')
) AND
EXISTS (SELECT 1
FROM Suchbaum S
WHERE SZ.gSuchbaumID = S.gID AND
S.sEbene2 IS NULL AND
S.sEbene3 IS NULL
);
这是在 中寻找两个不同的行Suchbaum
,每一个都匹配一个条件。
推荐阅读
- android - 如何在 Android Studio 中用 .add() 替换所有 =
- c# - 从 web api 返回一个 zipfile
- javascript - axios以表单数据格式上传jpg,响应数据:{error: 'Multipart: Boundary not found' }
- javascript - 如何从网址中获取参数?
- python - 如何使用 Selenium 和 BeautifulSoup 更快地抓取?
- python - 从 Dataframe 中选择行并包含另一列 python
- vue-router - 验证用户后使用 vue-router 的推荐方式是什么?
- tensorflow - 如何使用 tf.data.TextlineDataset 读取多个输入模型的数据?
- reactjs - 重定向 React Navite 时如何更新状态?
- javascript - 如何从 laravel 后端(控制器或模型)调用 Javascript 或 Ajax 函数?