我有一个名为BUID(ID,Name)的表 - ID是主键 和表详细信息(DetailsID,NomineeID,NominatorID,NominationID) - DetailsID是主键,其他ID是BUID的值。
现在我需要通过用来自BUID表的适当值替换NomineeID,NominatorID,NominationID来从Details表生成报告表。
怎么做。 请帮忙。 事先提前了。
答案 0 :(得分:0)
每次使用不同的别名多次加入buid表。像这样:
select whatever
from details join buid nominee on nomineeId = nominee.id
join buid nominator on nominatorId = nominator.id
same for nomination
etc
答案 1 :(得分:0)
我不完全确定我理解你的问题,但我认为这正是你要找的。基本上,每次使用不同的列加入BUID
时,您会多次使用不同的别名引用DETAIL
。
CREATE TABLE BUID (ID int, Name varchar(100))
CREATE TABLE Details (DetailsID int, NomineeID int, NominiatorID int, NominationID int)
GO
SELECT Nominee.Name AS Nominee,
Nominiator.Name AS Nominiator,
Nomination.Name AS Nomination
FROM Details
JOIN BUID Nominee
ON Details.NomineeID = Nominee.ID
JOIN BUID Nominiator
ON Details.NominiatorID = Nominiator.ID
JOIN BUID Nomination
ON Details.NominationID = Nomination.ID