在MySql中将表绑定在一起

在MySql中将表绑定在一起,mysql,database,Mysql,Database,我有一个表包含公司信息(即姓名、地址、业务描述…),另一个表包含用户信息(即姓名、姓氏、电子邮件和密码)。如何将公司表绑定到用户表,以便用户登录时公司与用户正确关联?在company表中是否有userid列 您正在寻找的 公司与用户之间存在一对多关系,因此您需要在用户表中创建一个名为company_id的列,然后按如下方式查询该列以获取用户及其公司: SELECT * FROM users INNER JOIN companies ON users.company_id = companies.

我有一个表包含公司信息(即姓名、地址、业务描述…),另一个表包含用户信息(即姓名、姓氏、电子邮件和密码)。如何将公司表绑定到用户表,以便用户登录时公司与用户正确关联?在company表中是否有userid列

您正在寻找的

公司与用户之间存在一对多关系,因此您需要在用户表中创建一个名为company_id的列,然后按如下方式查询该列以获取用户及其公司:

SELECT * FROM users INNER JOIN companies ON users.company_id = companies.id
你在找我

公司与用户之间存在一对多关系,因此您需要在用户表中创建一个名为company_id的列,然后按如下方式查询该列以获取用户及其公司:

SELECT * FROM users INNER JOIN companies ON users.company_id = companies.id

假设多个用户可能属于一个公司,但只有一个公司可能与一个用户关联,则用户表中的companyid最有意义

若要将两个表连接在一起,并且在所有情况下都希望两者匹配,请使用内部连接:

SELECT u.*, c.companyname FROM users u 
INNER JOIN companies c ON u.companyid = c.companyid

显然,上面是一个模拟查询,需要根据您的模式/需求进行裁剪。

假设多个用户可能属于一个公司,但只有一个公司可能与一个用户关联,那么用户表中的companyid最有意义

若要将两个表连接在一起,并且在所有情况下都希望两者匹配,请使用内部连接:

SELECT u.*, c.companyname FROM users u 
INNER JOIN companies c ON u.companyid = c.companyid

显然,以上是一个模拟查询,需要根据您的模式/需求进行裁剪。

不,您可能会有一对多关系。所以一家公司有很多员工。但一名员工只属于一家公司(为了简单起见)


这需要用户表中的外键指向公司id。

否,您可能有一对多关系。所以一家公司有很多员工。但一名员工只属于一家公司(为了简单起见)


这需要用户表中的外键指向公司id。

:?这是怎么回事?我正在重读这个问题,这就是他问的问题。+1来自我。。。另请参见:?这是怎么回事?我正在重读这个问题,这就是他问的问题。+1来自我。。。另外,请看,因为我在使用Cakephp,我学会了在我的模型中使用hasOne、hasMany、HasAndBelongToMany和BelongTo这样的关联,它自动处理连接…因为我在使用Cakephp,我学会了使用hasOne、hasMany、HasAndBelongToMany这样的关联,和belongsTo在我的模型和它处理自动连接。。。