我需要在我的RESULT列中找到最低編號,我知道可以用MIN完成,但我不知道如何執行此操作以及如何選擇其他列。我的代碼顯示所有成員的所有結果,但我只希望它顯示最佳結果(最低數字)以及該成員的其他詳細信息。從列中選擇最低編號並顯示其他列
現在我有一個看起來像這樣多個條目:
EVENT_ID EVENT_TYPE EVENT_NAME MEMBER_ID MEMBER_FIRSTNAME MEMBER_LASTNAME RESULT
event1 track 100M 0001 John Smith 11.3
我只需要選擇具有最低結果行和只顯示一個。這是我到目前爲止的代碼:
SELECT E.EVENT_ID, E.EVENT_TYPE, E.EVENT_NAME, R.MEMBER_ID, M.MEMBER_FIRSTNAME, M.MEMBER_LASTNAME, R.RESULT
FROM EVENT E, MEMBER M, RANK R
WHERE E.EVENT_ID = R.EVENT_ID
AND R.MEMBER_ID = M.MEMBER_ID;
SGEDDES - 我試圖按照您的最後一個方法,並不能得到它的工作:
SELECT E.EVENT_ID, E.EVENT_TYPE, E.EVENT_NAME, R.MEMBER_ID, M.MEMBER_FIRSTNAME, M.MEMBER_LASTNAME, R.RESULT
FROM (EVENT E, MEMBER M, RANK R
WHERE E.EVENT_ID = R.EVENT_ID
AND R.MEMBER_ID = M.MEMBER_ID;
ORDER BY RESULT)
WHERE ROWNUM = 1;
https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions137.htm使用ROW_NUMBER函數來確定要在cte或嵌套查詢中查找哪些記錄,然後選擇ROW_NUMBER = 1的位置。我會盡力向你展示,但是當你說你想要最低的結果是每個事件,每個成員,每個組合它們的關閉或? – Matt
你運行的是什麼版本的oracle? – sgeddes
@sgeddes Oracle Application Express 3.2.1.00.12 –