0
我想要做的(有點)與this old post有關的是相反的;根據group by和ID添加一個(半)連續的數字,然後標記最新的兩個項目
這裏是我的示例表:
ID NAME
---- ----
1 Apple
2 Apple
3 Apple
4 Bravo
5 Bravo
6 Cat
7 Cat
8 Cat
9 Cat
10 Apple
11 Apple
我想添加一個新行,增加了一個順序編號爲每個組項目。問題是有些項目多次出現,但不屬於同一組。如果它們依次出現(順序標識),它們只屬於一個。
更新後的表應該是這樣的:
ID GROUP NAME
---- ----- ----
1 1 Apple
2 1 Apple
3 1 Apple
4 2 Bravo
5 2 Bravo
6 3 Cat
7 3 Cat
8 3 Cat
9 3 Cat
10 4 Apple
11 4 Apple
然後作爲最後一步,我想單獨標記每個組的最新的兩個項目(具有最高ID值的),一種像這樣:
ID GROUP NAME MARK
---- ----- ---- ----
1 1 Apple false
2 1 Apple true
3 1 Apple true
4 2 Bravo true
5 2 Bravo true
6 3 Cat false
7 3 Cat false
8 3 Cat true
9 3 Cat true
10 4 Apple true
11 4 Apple true
我該怎麼在MySQL中做到這一點?
您是標記假下部/舊的ID不是最新 –
要分配,其經由被有條件地遞增一組使用可變在線分配。對於第二項任務 - 請注意,如果您反轉訂單,最後兩項將成爲前兩項。 –