使用查询从连接的表中检索数据

时间:2016-02-22 19:30:42

标签: mysql sql

我想做什么:

我想检索有关Customer的所有数据字段(包括与他相关的表中的所有数据(例如Country和{{1}的数据字段的数据字段}}

我希望我的查询将referralagent作为参数。

这是我的EER图表:

EER Diagram

我尝试了什么:

idUser

问题:

我不相信我所尝试的是“正确”的东西。在那儿 有没有更好的方法呢?

1 个答案:

答案 0 :(得分:1)

您的查询基本上是正确的,我刚刚编辑了SELECT部分,因此它有点短。

SELECT customer.*, referralagent.firstName,
       referralagent.lastName, country.name, nationality.name
FROM   customer, country, nationality, referralagent
       INNER JOIN referralagent
             ON customer.ReferralAgent_idreferralAgent = referralagent.idReferralAgent
       INNER JOIN country
             ON customer.countryResidence = country.idCountry
       INNER JOIN nationality
             ON customer.nationality = nationality.idNationality

只需键入*即可返回每列。键入table_name.*将返回某个表的每一列。

JOINS是正确的,您将表与给定条件合并:

customer.ReferralAgent_idreferralAgent = referralagent.idReferralAgent

customer.countryResidence = country.idCountry

customer.nationality = nationality.idNationality