在创建从两个表中选择数据的MYSQL-Query时遇到问题

时间:2016-02-29 13:12:22

标签: mysql sql select-query

我在MYSQL中练习时遇到了一些麻烦。

有两个表:

Employees

ID    Name         InstitutionID

1     Tom          1
2     Bert         1
3     Steve        2
4     Marcus       3
5     Justin       1

Institutions

InsID    InstitutionName      Location

1         Storage               London
2         Storage               Berlin
3         Research              London
4         Distribution          Stockholm

现在的任务是创建一个查询,该查询输出一个包含两列的表:

 Employees.Name         Institutions.InstiutionName

声明机构的位置在伦敦,这意味着Employees表中的机构ID与表机构的InsID相同。

输出应该是这样的:

Name          InstituionName

Tom           Storage
Bert          Storage
Marcus        Research
Justin        Storage

要获取没有InstitutionName的名称很简单:

select Employees.Name from Employees
where InstitutionID in (select InsID from Institutions where Location = 'London')

但我不知道如何让员工#39;一个表中的名称和机构名称。

请帮助我:)。

2 个答案:

答案 0 :(得分:2)

所以你需要一个简单的连接查询:

SELECT t.name,s.InstitutionName      
FROM Employees t
INNER JOIN Institutions s
ON(t.InstitutionID = s.insID
   AND s.Location = 'London')

答案 1 :(得分:1)

select e.Name, i.InstitutionName from Employees e
join Institutions i
on e.InstitutionID = i.insID
where InstitutionID in (select InsID from Institutions where Location = 'London')