日期:2014-05-16  浏览次数:20867 次

多表联合查询总有重复值,求救
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张表都连起来了,如果上面出现重复值看你的应用程序设计得是什么样的
通常情况下一个用户有一份劳动合同交接只交接一次
如果一个用户有多分劳动合同的情况的话就会出现重复值