我需要编写一个组合 3 个不同表并以特定方式呈现它们的查询。
- 表 1:员工
- 表 2:部门
- 表 3:汽车
Employees 表有一个联合列用于连接“Department”表(department_id)和“Cars” >' 表(emp_id)。
我需要编写一个查询,根据用户详细信息(包括“部门”和“汽车”表)显示以下数据:
- 员工 - 所有列
- 部门 - 部门列
- Cars - 所有列,但写成字符串文本,用“,”分隔字符串中的每一列。
我收到以下查询,但我不知道如何将“Cars”表列打印为字符串:
select
Employees.*,
Departments.department,
Cars.*
from Employee
join department on departments.id = employees.department_id
join Cars on cars.emp_id = employees.id order by employees.id
最佳答案
我想这就是你想要的:
select e.*,d.*,concat(c.col1,c.col2,c.col3.... ,',')
from Employees e,Departments d,Cars c
where
e.department_id=d.department_id
and d.emp_id=e.emp_id
order by e.emp_id;
关于将 3 个表与类似输出的字符串组合在一起的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55797115/