C# 如何在sql server中将一个表的多行合并为一行并连接到另一个表
如何将教师资格表中的行合并到一行,并将其连接到另一行,以便我可以搜索给定的条件,以了解教师是否拥有给定的学位/证书。或者除了我尝试使用的方法之外,还有更好的方法吗?提前谢谢。第二张图片 我有一个staffTable和一个StaffQualificationTable(对于任何给定的员工都有多个资格条目)。我需要检查一些员工是否具有某些给定的资格,例如“教育学士学位”、“教育硕士学位”、“教育研究生文凭”,并退还所有没有资格的员工,这样他们将被要求投标或解雇。拜托,我希望这更清楚C# 如何在sql server中将一个表的多行合并为一行并连接到另一个表,c#,sql,sql-server,C#,Sql,Sql Server,如何将教师资格表中的行合并到一行,并将其连接到另一行,以便我可以搜索给定的条件,以了解教师是否拥有给定的学位/证书。或者除了我尝试使用的方法之外,还有更好的方法吗?提前谢谢。第二张图片 我有一个staffTable和一个StaffQualificationTable(对于任何给定的员工都有多个资格条目)。我需要检查一些员工是否具有某些给定的资格,例如“教育学士学位”、“教育硕士学位”、“教育研究生文凭”,并退还所有没有资格的员工,这样他们将被要求投标或解雇。拜托,我希望这更清楚 请键入表格结构
请键入表格结构、一些数据和预期结果。您应该编辑您的问题(或删除此问题并添加另一个问题)。将样本数据作为测试表包含在查询和所需结果中。现在还不清楚你想做什么。你看起来像是在补充问题。
SELECT
StaffTable.TeacherType,
StaffTable.StaffID,
TeacherQualificationsTable.YearOfGraduation,
TeacherQualificationsTable.SubjectMajorsCombination,
STUFF((SELECT
', ' + [DegreeObtained]
FROM
TeacherQualificationsTable FOR XML PATH('')),1,1,'') AS [DegreeObtained]
FROM
StaffTable
INNER JOIN
TeacherQualificationsTable
ON
StaffTable.StaffID = TeacherQualificationsTable.StaffID
INNER JOIN
AppointmentChronologyTable ON StaffTable.StaffID = AppointmentChronologyTable.StaffID
WHERE
(StaffTable.TeacherType = @TeacherType)
AND (StaffTable.StaffStatus = @StaffStatus)
AND DegreeObtained NOT CONTAINS ('B.Ed (Bachelor of Education)' , 'M.Ed (Master of Education)', 'G.D.E (Graduate Diploma in Education)')
ORDER BY
StaffTable.LastName,
StaffTable.FirstName,
StaffTable.MiddleName