我目前在編寫業務邏輯時遇到問題,無法從表中獲取具有id和我已附加到其中的標誌的行。SQL根據條件獲取行
例如,
id: id seq num: flag: Date:
A 1 N ..
A 2 N ..
A 3 N
A 4 Y
B 1 N
B 2 Y
B 3 N
C 1 N
C 2 N
最終的結果我想實現的是: 對於每一個唯一的ID我只想取回一行與該行作爲條件
如果該標誌是「Y」,則返回該行。
否則返回最後一個「N」行。
另一個要注意的是,「Y」標誌是不必總是最後
我一直試圖讓使用分區case
條件像 OVER (PARTITION BY A."ID" ORDER BY A."Seq num")
但至今沒有運氣。
- 編輯:
從表中,抽樣結果將是:
id: id seq num: flag: date:
A 4 Y ..
B 2 Y ..
C 2 N ..
什麼是你嘗試的情況狀況?你有沒有試過把分區的結果放在公用表格表達式中,這樣你就可以使用這種情況了? – Sander
您能向我們展示您對該樣本表的期望輸出嗎?我很難弄清楚「唯一ID」是指什麼。 –
@TimBiegeleisen我已添加結果 – Pyrons