【发布时间】:2017-03-24 09:49:27
【问题描述】:
在我的情况下,我有两张表格,一张包含所有机构简介的表格和一张代表这些机构研究的材料的表格。
在搜索中,我想查找研究具体材料类型的机构名称。所以可以找研究“木”和“金属”的机构,就“金属”等...
我尝试了以下查询:
SELECT p.name
FROM q1_institution_profiles p
INNER JOIN q9_materials_studied_by_institution pf
ON pf.id_institution = p.id_institution
WHERE pf.id_material_studied = 10 AND pf.id_material_studied = 8
但是结果是空的,因为当我有多个条件时出现问题(这里 id_material_studied 必须等于 8 和 10)。
有没有办法正确地实现这一点,或者我是否必须针对每个条件进行加入?
提前感谢您的回答
【问题讨论】:
-
不确定我是否理解正确,但似乎将 where 语句中的 AND 更改为 OR 应该会给你想要的。
-
在哪里(pf.id_material_studied = 10 或 pf.id_material_studied = 8)
-
不,它不起作用..因为我必须满足这两个条件并且使用“OR”并非如此。它选择所有等于 8 和所有等于 10 的,而不仅仅是等于 8 和 10 的那些。