如何将多个表连接在一起
How do I join multiple tables together
我正在尝试将多个 table 连接在一起,但我似乎做不对。我得到的错误是:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.egr_name = egr.name
JOIN dirEgr
dirEgr' at line 4
我的 SQL 语法如下
SELECT egr.*, carEgr.*, dirEgr.*, egrEmp.*, emp.*, boss.*, asoci.*, snip.*, pro.*
FROM egr
JOIN carEgr
carEgr.egr_name = egr.name
JOIN dirEgr
dirEgr.egr_name = egr.name
JOIN egrEmp
egrEmp.egr_name = egr.name
JOIN emp
emp.idEmp = egrEmp.emp_idEmp
JOIN boss
boss.emp_idEmp = emp.idEmp
JOIN asosi
asoci.egr_name = egr.name
JOIN snip
snip.egr_name = egr.name
JOIN pro
pro.egr_name = egr.name
egr_name 是大多数 table 的主键,emp 和 boss 除外。另外,如何将 boss 连接到 egr table 或 egr_name 主键?我的 table 是:
egr
name
carEgr
egr_name //primary foreign key from egr table
idCarEgr //primary key
nameCarEgr
dirEgr
idDirEgr //primary key
egr_name //primary foreign key from egr table
nameDirEgr
egrEmp
emp_idEmp //primary key
egr_name //primary foreign key from egr table
nameEmp
emp
idEmp //primary key
nameEmp
boss
idBoss //primary key
emp_idEmp //primary foreign key from emp table
nameBoss
snip
idSNIP //primary key
egr_name //primary foreign key from egr table
nameSNIP
asoci
idAsoci //primary key
egr_name //primary foreign key from egr table
nameAsoci
pro
idPro //primary key
egr_name //primary foreign key from egr table
namePro
您缺少 JOINS
的 ON
子句
SELECT egr.*, carEgr.*, dirEgr.*, egrEmp.*, emp.*, boss.*, asoci.*, snip.*, pro.*
FROM egr
JOIN carEgr
ON carEgr.egr_name = egr.name
JOIN dirEgr
ON dirEgr.egr_name = egr.name
JOIN egrEmp
ON egrEmp.egr_name = egresado.name
JOIN emp
ON emp.idEmp = egrEmp.emp_idEmp
JOIN boss
ON boss.emp_idEmp = emp.idEmp
JOIN asosi
ON asoci.egr_name = egr.name
JOIN snip
ON snip.egr_name = egr.
JOIN pro
ON pro.egr_name = egr.name
egrEmp.egr_name = egresado.name
egresado 的参考资料在哪里。这没有定义。除了上述评论外,更改此和 运行 您的查询。
我正在尝试将多个 table 连接在一起,但我似乎做不对。我得到的错误是:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.egr_name = egr.name
JOIN dirEgr
dirEgr' at line 4
我的 SQL 语法如下
SELECT egr.*, carEgr.*, dirEgr.*, egrEmp.*, emp.*, boss.*, asoci.*, snip.*, pro.*
FROM egr
JOIN carEgr
carEgr.egr_name = egr.name
JOIN dirEgr
dirEgr.egr_name = egr.name
JOIN egrEmp
egrEmp.egr_name = egr.name
JOIN emp
emp.idEmp = egrEmp.emp_idEmp
JOIN boss
boss.emp_idEmp = emp.idEmp
JOIN asosi
asoci.egr_name = egr.name
JOIN snip
snip.egr_name = egr.name
JOIN pro
pro.egr_name = egr.name
egr_name 是大多数 table 的主键,emp 和 boss 除外。另外,如何将 boss 连接到 egr table 或 egr_name 主键?我的 table 是:
egr
name
carEgr
egr_name //primary foreign key from egr table
idCarEgr //primary key
nameCarEgr
dirEgr
idDirEgr //primary key
egr_name //primary foreign key from egr table
nameDirEgr
egrEmp
emp_idEmp //primary key
egr_name //primary foreign key from egr table
nameEmp
emp
idEmp //primary key
nameEmp
boss
idBoss //primary key
emp_idEmp //primary foreign key from emp table
nameBoss
snip
idSNIP //primary key
egr_name //primary foreign key from egr table
nameSNIP
asoci
idAsoci //primary key
egr_name //primary foreign key from egr table
nameAsoci
pro
idPro //primary key
egr_name //primary foreign key from egr table
namePro
您缺少 JOINS
ON
子句
SELECT egr.*, carEgr.*, dirEgr.*, egrEmp.*, emp.*, boss.*, asoci.*, snip.*, pro.*
FROM egr
JOIN carEgr
ON carEgr.egr_name = egr.name
JOIN dirEgr
ON dirEgr.egr_name = egr.name
JOIN egrEmp
ON egrEmp.egr_name = egresado.name
JOIN emp
ON emp.idEmp = egrEmp.emp_idEmp
JOIN boss
ON boss.emp_idEmp = emp.idEmp
JOIN asosi
ON asoci.egr_name = egr.name
JOIN snip
ON snip.egr_name = egr.
JOIN pro
ON pro.egr_name = egr.name
egrEmp.egr_name = egresado.name
egresado 的参考资料在哪里。这没有定义。除了上述评论外,更改此和 运行 您的查询。