我在“任务”表中有一行,其中包含“ AssignTo”列和“ AssignFrom”列。该列与“雇员”表有关。在“员工”表中,我有“名称”列。如何通过获取员工姓名查询“任务”表?我知道联接,但每个表只引用一列。
编辑:“员工”表中的PK为OID
您需要两个联接:
select t.*, ef.name as from_name, et.name as to_name
from task t left join
employee ef
on t.assignfrom = ef.name left join
employee et
on t.assignto = et.name;
这样可以使用left join,如果分配字段为空,则不会丢失任何行。
另外,您应该使用员工ID而不是连接名称。也许您应该重新审视数据模型。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。