我現在有一個表作爲(樣品快照):錯誤在內部連接功能
Employee ID Old Value New Value Update Date
1 Analyst non-employee 10/1/2012
1 non-employee Senior Analyst 10/1/2012
2 Analyst non-employee 9/1/2012
2 non-employee Assistant Mgr. 9/1/2012
2 Assistant Mgr. non-employee 10/1/2015
2 non-employee Manager 10/1/2015
3 Analyst non-employee 10/1/2015
3 non-employee Manager 10/1/2015
4 Analyst non-employee 9/1/2012
4 non-employee Senior Analyst 9/1/2012
4 Senior Analyst non-employee 10/1/2015
4 non-employee Assistant Mgr. 10/1/2015
4 Assistant Mgr. non-employee 10/6/2015
4 non-employee Manager 10/6/2015
從這個表,我需要挑選出從分析過渡到經理直接,即那些員工ID。而無需成爲助理經理或高級分析師。
所需的結果:
Employee ID Old Value New Value Update Date
3 Analyst Manager 10/1/2015
我跑下面的查詢中獲取得到期望的結果:
select t.id, t.oldvalue, tnext.newvalue, t.updatedate
from table t inner join
table tnext
on t.employeeid = tnext.employeeid and
t.updatedate = tnext.updatedate and
t.newvalue = 'non-employee' and
tnext.oldvalue = 'non-employee'
where t.oldvalue = 'Analyst' and tnext.newvalue = 'Manager';
我得到的錯誤是加入表達的t.newvalue='non-employee'
部分不支持高亮查詢。我GOOGLE了這個問題,但我無法找出問題。任何幫助將非常感激!謝謝!
表中錯字的道歉。它應該是非員工。任何時候發生變化,狀態首先變爲非員工,然後變爲新狀態。 –
我只是對sqlite數據庫中的相同關係運行相同的查詢,並得到了完美的結果。你使用的是什麼DBMS? – audin
我正在使用MS Access。不幸的是,這是我目前唯一擁有的軟件。 –