假设我在访问数据库中有多个表(例如3个)。让我们将其命名为员工,配偶和子女。 Employee和Children表之间存在一对多的关系。
员工将姓名,姓氏,DOB,地址等作为属性,而配偶表和子表也具有姓名,姓氏,DOB属性。 Employee表比其他表具有更多属性。它们都有一个连接表的主要属性“EmployeeID”。
假设我想设计一个查询,告诉我公司所有员工的全部详细信息,我该怎么办呢?
进一步澄清,假设EmployeeID 2345的配偶有三个孩子记录在数据库中。与任何其他连接不同,(查询应包括Employee表中的所有行以及与Employee表的属性匹配的其他表中的所有相应记录),而不重复Employee表中的初始列。即如下。
EmplD名字姓氏......
2345 RAVI COOK ....
2345 BANDANA COOK ....
2345 SHANKEN COOK ....
2345 SUSHANG COOK ....
答案 0 :(得分:0)
您是否希望您搜索的员工编号是参数(下面的[搜索ID])?您可以使用Union查询,例如
select EmplID, Name, Surname from [employees] where [EmplID]=[search ID]
union select EmplID, Name, Surname from [spouses] where [EmplID]=[search ID]
union select EmplID, Name, Surname from [children] where [EmplID]=[search ID];