0
我有一個數據庫是AUD_entitiy_type。我有一個非常簡單的查詢:從實體審計中選擇最低版本號
SELECT id, REV, status_1, status_2, status_3, status_4, code
FROM AUD_entitiy_type --Audit table
WHERE (status_1 LIKE 'A%' AND status_2 IS NULL
OR (status_1 LIKE 'B%' AND status_2 IS NULL)
OR (status_1 LIKE 'C%' AND status_2 IS NULL))
基本上我拿到了A,B或C的STATUS_1所有實體(可以是A1,A2 ......)。
審計表有一個實體發生的每個更新的條目,即A2更改爲B1。
與查詢我得到這樣
id REV status_1 status_2 status_3 status_4
1 100 A1 NULL NULL NULL
1 112 B1 NULL NULL NULL
1 131 A3 NULL NULL NULL
2 135 A1 NULL NULL NULL
3 142 A6 NULL NULL NULL
結果我需要的是在有具有相同的ID(1以上)多個實體的情況下得到了一個最低的REV(100以上)。
我的研究不太遺憾,因爲我不確定要使用的關鍵字。有最小值給出having
和min
這似乎並不是我所期待的,因爲在這個例子中我仍然想要2和3.
可能有很多規範化在這裏我知道,但5年前我沒有在這裏工作,這個應用程序目前正在運行(我有一個JIRA的更新;))