多表联合查询总有重复值,求救
user --人员表
userid
name
personalInfo --人员信息表
id
userid (对应USER表的userid)
personalCode
contract --劳动合同表
id
personalCode (对应personalInfo表的personalCode)
state
transfer --工作交接
id
userid (对应USER表的userid)
process
reason
有以上4张表,是人员信息管理用的(关联不太合理)。
我要查询transfer表中的所有信息,并关联出transfer表对应记录的劳动合同 和 用户详情信息,及contract表中的state 和 user表中的name。
以transfer表为主表
多表联合查询总是有重复值,请教该怎么解决。谢谢
------解决方案--------------------desc
------解决方案--------------------贴上你的sql语句 最好能添加几行数据 看看效果
------解决方案--------------------
select * from user u,transfer t,personalInfo p,contract c
where u.userid=p.userid and t.userid=p.userid and p.personalCode =c.personalCode
这不就出来了么,3张表都连起来了,如果上面出现重复值看你的应用程序设计得是什么样的
通常情况下一个用户有一份劳动合同交接只交接一次
如果一个用户有多分劳动合同的情况的话就会出现重复值