0

现在已经为此烦恼了一段时间,我认为这可能是我设置连接的方式。

我有两张桌子。一个称为信息,其中包含所有用户的联系信息。我的第二张被叫号码表包含不同用户的所有电话号码。它们通过 info 的主 id 与 phonenumbers 的 info_id 相关联。我希望他们基于这种关系加入,并且我希望 phonenumbers 下的所有电话号码都加入到 info 中的单个 phonenumbers 列中。我正在使用的当前连接是这个。

SELECT phonenumbers p, info i FROM i.phonenumbers 
INNER JOIN p.workphone 
ON i.PID=p.info_id 
INNER JOIN p.homephone 
ON i.PID=p.info_id 
INNER JOIN p.mobilephone 
ON  i.PID=p.info_id

我得到的只是 SELECT comman 被拒绝给数据库工作电话上的用户,而不是数据库。

表信息:PID,名字,姓氏,地址,电子邮件,电话号码,

表phonenumbers:PID,workphone,homephone,mobilephone,info_id,

连接的语法会很好。所有的教程都只是给出了例子,而不是解释不同的部分是什么。

4

1 回答 1

1

JOIN 语法是

TYPE_OF_JOIN database.table ON field = field

既然你有

JOIN p.workphone ON i.PID = p.info_id

您实际上是在告诉数据库查找名为 的数据库p,其中包含一个 table workphone

p在 SELECT 字段列表中创建别名并不重要。这是一个字段别名,它们与表别名不同。

于 2013-10-21T21:17:04.410 回答