Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.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
SQL:使用多列筛选数据_Sql_Oracle - Fatal编程技术网

SQL:使用多列筛选数据

SQL:使用多列筛选数据,sql,oracle,Sql,Oracle,抱歉,如果已询问此查询,但我已搜索,无法找到任何解决我的问题的方法 我有两张桌子: 表1: Act Marks Paint 6 Paint 7 Paint 16 Paint 17 Swim 6 Swim 2 Sea 448 Sea 17 Drama 6 Drama 7 Drama 16 表2: Mark

抱歉,如果已询问此查询,但我已搜索,无法找到任何解决我的问题的方法

我有两张桌子:

表1:

Act       Marks   
Paint       6   
Paint       7       
Paint       16      
Paint       17  
Swim        6
Swim        2
Sea        448
Sea         17
Drama       6
Drama       7
Drama      16
表2:

Marks   Service_cordinator
  6            X3
  7            A2
  16            A3
  17             X1
  1              X2
  2              X3
  448            X4
  234            X5
查询是获取具有服务协调器X3、A2和A3的所有ACT。 i、 e.查询应返回
Paint
traic


表中没有主键/外键关系。唯一的关系是
标记
,这在两个表中都很常见。

使用
标记
连接表,然后
分组,并
拥有

select t1.act
from table1 t1 join
     table2 t2
     on t1.marks = t2.marks
where t2.Service_cordinator in ('X3', 'A2', 'A3')
group by t1.act
having count(distinct Service_cordinator) = 3;

欢迎使用Stackoverflow,感谢您提供示例数据,但请注意,这不是免费的编码服务。您需要显示您尝试过的查询。如果您在该查询中遇到困难,请在该查询上寻求帮助。您只需使用标记作为公共数据连接这两个表,然后通过服务协调器对其进行过滤