我有与 mysql 关系有关的问题。假设我有 4 个表companya companyb companyc和companyd ,每个包含 3 列:name
、phone
和age
。此外,我还有另一个名为address的表,我想用这个地址表链接到每个 companyX,假设我做select * from companyX;
了地址列应该出现在每个名称旁边。
这可以用mysql完成吗?
首先,如果公司表具有完全相同的结构,为什么不只使用一个表来存储信息呢?您可能想阅读有关数据库规范化的信息。
其次,您可以创建一个名为“companiesAddresses”之类的关系表,并在其中存储诸如“CompanyID”和“AddressID”之类的字段(显然,您必须在 companyX 的表中创建一个主键列并在“地址”中执行相同的操作' 表,因此您可以使用 INNER JOIN 子句来获取您想要的信息,例如SELECT companyX.companyName, addresses.Address FROM companyX INNER JOIN companiesAddresses ON companyX.CompanyID = companiesAddresses.CompanyID INNER JOIN addresses ON companiesAddresses.AddressID = addresses.AddressID
.
我希望我能正确理解你想要什么。