MySQL Basic关于关系

时间:2010-01-25 02:12:32

标签: mysql foreign-key-relationship

我怀疑如何对待以下事情:

我有一个用户属于公司的系统,该用户拥有他们的客户。

如何获得所有公司客户的列表以及跟随用户名的正确方法?

在客户端表中,我有一个具有以下关系之一的字段:

  • company_id和user_id字段
  • just company_id field
  • 只是user_id字段导致用户表有company_id ???
  • 别的......

TKZ 罗伯特

2 个答案:

答案 0 :(得分:1)

表关系:
客户端(FK_companyId,FK_userId)。 “只有拥有多家公司才能使用FK_companyId” 用户(FK_companyId)。
公司(客户或用户没有外键)。

如果系统中只有一家公司,那么您不需要将其包含在关系中:

SELECT clientInfo FROM client where userId=userSessionId;

如果你有多家公司那么:
SELECT client.clientInfo,client.companyId,company.companyInfo FROM client left join company on (client.companyId = company.Id) where userId=userSessionId;

注意:左连接用于获取“公司信息”(如果可用),但将检索链接到该特定公司的所有用户客户端。

最后:如果mutli用户可以管理一个客户端信息,那么您不应将这两个实体链接/耦合在一起。

顺便说一句:你的英语太可怕了!

答案 1 :(得分:0)

您可以使用select语句

SELECT company_id,user_id FROM client;