我有一個表結構爲等一系一列數字:如何生成與基於最小和最大價值
fake_id start end misc_data
------------------------------------------------------
1 101 105 ab
1 101 105 cd
1 101 105 ef
2 117 123 gh
2 117 123 ij
2 117 123 kl
2 117 123 mn
3 51 53 op
3 51 53 qr
注意,fake_id領域是不是一個真正的主鍵,但重複次數等於開始和結束所指定範圍內的不同奇數的數量。 real每個記錄的id是該範圍中的奇數之一。我需要寫一個返回fake_id,misc_data,以及包含這些奇數產生真正的ID另一列的查詢,如下所示:
fake_id real_id misc_data
------------------------------------------
1 101 ab
1 103 cd
1 105 ef
2 117 gh
2 119 ij
2 121 kl
2 123 mn
3 51 op
3 53 qr
據我所知,目前還不能保證會有序列中沒有空白(例如,可能沒有範圍21-31的記錄)。如何告訴查詢(或過程,但查詢更可取),對於每個具有特定fake_id的記錄,它應該返回開始和結束之間的下一個奇數?
此外,有沒有辦法讓misc_data的值屬於一個特定的real_id?以第二個表格爲例,我怎麼能告訴查詢「ab」屬於real_id 101而不是103?
在此先感謝。
您如何計劃爲real_id訂購新值? –