Sql 为什么我的查询显示重复数据?
我怎样才能在我的提问中阻止这种重复 我有两张表格 个人信息 训练 现在一个人只有一个个人记录,但培训课程可以超过一个记录 但问题是,在培训课程中,个人信息记录也会重复,这是我不想重复的 SP:Sql 为什么我的查询显示重复数据?,sql,sql-server,sql-server-2008,tsql,sql-server-2012,Sql,Sql Server,Sql Server 2008,Tsql,Sql Server 2012,我怎样才能在我的提问中阻止这种重复 我有两张表格 个人信息 训练 现在一个人只有一个个人记录,但培训课程可以超过一个记录 但问题是,在培训课程中,个人信息记录也会重复,这是我不想重复的 SP: 如果此人接受过1次以上的培训,在不复制人员数据的情况下,您希望获得什么样的输出?请尝试添加差异。此处不清楚您希望获得什么样的输出,请提供更多详细信息。使用2个查询获取个人信息和培训/课程separately@Juventustech,你显然加入了他们,那么,您如何期望PersonalInfo不会重复?对于
如果此人接受过1次以上的培训,在不复制人员数据的情况下,您希望获得什么样的输出?请尝试添加差异。此处不清楚您希望获得什么样的输出,请提供更多详细信息。使用2个查询获取个人信息和培训/课程separately@Juventustech,你显然加入了他们,那么,您如何期望PersonalInfo不会重复?对于每个培训记录,您显然会得到填充有重复数据的PersonalInfo列。。。你认为一个人的几次训练在你的成绩中会是什么样子。。。您希望在PersonalInfo中看到什么?
SELECT PersonalInfo.pk_PersonalInfo_ID,
PersonalInfo.PersonalInfoReligion,
PersonalInfo.PersonalInfoPhoneResidence,
PersonalInfo.PersonalInfoPhoneoffice,
PersonalInfo.PersonalInfoNIC,
PersonalInfo.PersonalInfoName,
PersonalInfo.PersonalInfoMobile,
PersonalInfo.PersonalInfoMaritalStatus,
PersonalInfo.PersonalInfoGender,
PersonalInfo.PersonalInfoFatherHusbandName,
Convert(varchar, PersonalInfo.PersonalInfoEntryDateTime, 106),
PersonalInfo.PersonalInfoEmailAddress,
PersonalInfo.PersonalInfoDomicile,
Convert(varchar,PersonalInfo.PersonalInfoDOB, 106) AS PersonalInfoDOB,
PersonalInfo.PersonalInfoComputerLiterate,
PersonalInfo.PersonalInfoAddress,
PersonalInfo.fk_WebUsers_PersonalInfo_UserID,
PersonalInfoEmployeePicture,
Qualification.AcademicQualification,
Qualification.pk_Qualification_QualificationID,
Qualification.fk_PersonalInfo_Qualification_PID,
Qualification.QualificationGrade,
Qualification.QualificationInstituteAddress,
Qualification.QualificationInstituteName,
Qualification.QualificationMajorSubjects,
Qualification.QualificationPassingYear,
Qualification.fk_PersonalInfo_Qualification_PID,
TrainingsCourses.pk_TrainingsCourses_ID,
TrainingsCourses.fk_PersonalInfo_TrainingsCourses_PID,
TrainingsCourses.TrainingsCoursesCountry,
TrainingsCourses.TrainingsCoursesCourseTitle,
Convert(varchar, TrainingsCourses.TrainingsCoursesFromDate, 106) AS TrainingsCoursesFromDate,
TrainingsCourses.TrainingsCoursesInstituteAddress,
TrainingsCourses.TrainingsCoursesInstituteName,
Convert(varchar, TrainingsCourses.TrainingsCoursesToDate, 106) AS TrainingsCoursesToDate
FROM PersonalInfo
INNER JOIN Qualification ON Qualification.fk_PersonalInfo_Qualification_PID= PersonalInfo.pk_PersonalInfo_ID
INNER JOIN TrainingsCourses ON TrainingsCourses.fk_PersonalInfo_TrainingsCourses_PID= PersonalInfo.pk_PersonalInfo_ID
WHERE PersonalInfo.pk_PersonalInfo_ID= @pk_PersonalInfo_ID