我有两张 table
1st table :-
id name dept
1 John dept1
2 Mary dept2
3 Dave dept3
4 John dept4
5 John dept5
2nd table :-
id submitter dept
1 Rupert dept3
2 Joe dept1
3 Lisa dept2
4 Louise dept4
5 Tom dept5
我想要的是一个查询,允许第一个表中的姓名列中的人员仅显示基于其匹配部门的记录,例如表一中的约翰将返回表2中的3条记录(id 2,4和5 )
到目前为止我已经尝试过SELECT * FROM table1, table2 WHERE table1.dept = table2.dept AND table1.name='John'
最佳答案
如果我正确理解您的问题,您需要使用字段部门在两个表之间进行联接,并在第一个表中按请求者的名称过滤结果。
SELECT t2.submitter, t2.dept
FROM table1 t1
LEFT JOIN table2 t2 ON t1.dept = t2.dept
WHERE t1.name = :person_name
Documentation and examples (您还可以查看左侧菜单的“内部”、“右侧”、“完整”和“自连接”)。
关于php - 简单的MySQL两表查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47350210/