您好,我正在尝试将以下内容从 oracle 转换为 Mysql,因为 Mysql 不支持使用 INTERSECT with 的结果。我尝试过多次加入,但仍然没有运气。甲骨文查询:
select DISTINCT company_name from employee
inner join works on
works.Lastname=employee.Lastname AND
works.Firstname=employee.Firstname AND
works.MidInitial=employee.MidInitial
where employee.city='New York'
INTERSECT
select DISTINCT company_name from employee
inner join works on
works.Lastname=employee.Lastname AND
works.Firstname=employee.Firstname AND
works.MidInitial=employee.MidInitial
where employee.city='Seattle'
谢谢!
最佳答案
在您的情况下(所有行都是唯一的),以下方法应该有效:
SELECT x.company_name FROM
(select DISTINCT company_name from employee
inner join works on
works.Lastname=employee.Lastname AND
works.Firstname=employee.Firstname AND
works.MidInitial=employee.MidInitial
where employee.city='New York') x
INNER JOIN
(select DISTINCT company_name from employee
inner join works on
works.Lastname=employee.Lastname AND
works.Firstname=employee.Firstname AND
works.MidInitial=employee.MidInitial
where employee.city='Seattle') y
USING (company_name)
关于mysql - 将相交从 Oracle 转换为 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31332515/