首页 > 解决方案 > 访问同一张表,不同的参数

问题描述

我正在制作一个客户管理数据库,我有一个名为 Dates 的表,它可以访问 Customer 和 Employee 并且两者都可以访问 Data,个人信息保存在哪里,我怎样才能访问两次 Data?

日期表

--------------------------------------
id    fk_idCustomers    fk_idEmployee
--------------------------------------
1     1               2

客户表

-------------------
id    fk_idData
-------------------
1     1

员工表

-------------------
id    fk_idData
-------------------
2     2

数据表

------------------------
id    Name    LastName
------------------------
1     John      Doe
2     John1      Doe1

我想同时拥有员工和客户的姓名

标签: mysqljoin

解决方案


我找到了答案:

select 
    data.nombre , 
    data.apellido , 
    dates.documentacion,
    d.nombre,
    d.apellido
from 
    dates
inner join customers on dates.idCliente = customers.id 
inner join data on customers.idDatos = data.id
inner join employees on dates.idUsuario = employees.id
inner join dates d on employees.idDatos = d.id
;

+------+-------+----------+-------+----------+
| id   | name  | lastname | name  | lastname |
+------+-------+----------+-------+----------+
|    1 | John  | Doe      | John1 | Doe1     |
+------+-------+----------+-------+----------+
5 rows in set (0.00 sec)

推荐阅读