0
我有表:从2级表和2人获得最新的日期
Person
-------------
ID | name
Notes
---------------------------
targetID | Content | Date
CallHistory
--------------------------
CallerID | CalleeID | Date
现在说我有一个个人和配偶(这是对同一人表)。 他们有相应的笔记和callhistory。
我要的是无论从配偶或人的最近的日期(来电或注)
我用尽选择最近的日期:
SELECT top 1 Date, ID from (select TargetID as ID, Date from notes
union
SELECT CalleeID as ID, Date from Callhistory)
WHERE ID in (person.ID, spouse.ID)
,但没有运气。
编辑:这是选择一个select语句中:
select p.*, SELECT top 1 Date, ID from (select TargetID as ID, Date from notes
union
SELECT CalleeID as ID, Date from Callhistory)
WHERE ID in (person.ID, spouse.ID) as RecentContactDate
From Person person
LEFT JOIN PersonRelationship pr on person.ID = pr.ID AND pr.Type = 3 -- spouse
LEFT JOIN Person spouse on pr.RelatedID = spouse.ID
......
即时得到Ambigous column name Date
错误。
有什么想法?
你怎么知道他们是配偶?我没有在你的表格中看到这种关系。 –
不管他们是否配偶是无关紧要的。我说,如果我必须ID ..? –
你说“配偶或人的最近日期” - 所以你需要有一种方法来确定他们的关系。 –