MySql从4个不同的表中选择

时间:2014-02-05 18:05:17

标签: mysql select

我有一个MySql查询问题。我正在使用的表非常大,所以我列出了一个简单的例子,然后我可以在更复杂的表结构中使用它。

让我们说这些表如下。

House(id, name)
Person(id, name, house_id)
Car(id, name, person_id, type)
CarEngine(id, name, hp)

每个人都属于一个房子。每辆车都属于一个人。每辆车都有一个CarEngine,主键(id)相同。

如何在从CarEngine中选择Carrengine的所有信息时,如何有效地选择Carrengine中的所有信息,其中Car type是car?

1 个答案:

答案 0 :(得分:1)

select p.name as PersonNamee, h.name as HouseName, c.name as CarName, 
    e.id as CarID, e.name as EngineName, e.hp
from Person p
inner join House h on p.house_id = h.id
inner join Car c on p.id = c.person_id
inner join CarEngine e on c.id = e.id
where c.type = 'truck'