0
我想確定是否有一種方法來排序由開始/結束列組成的MySQL表的行。 (也可以認爲是父/子關係或其他鏈接列表排列)排序/排序MySQL中的數據對?
這裏的數據當前存儲的例子:
id start finish
2 stepthree stepfour
6 stepfive stepsix
9 stepone steptwo
78 stepfour stepfive
121 steptwo stepthree
(此ID號是不相關的,只是使用它們來指示任意數據的附加列)
我想排序/顯示這些行的順序,假設我總是以「stepone」開始,遍歷開始 - >完成鏈,每個「完成」隨後是該行作爲「開始」。
desired output
9 stepone steptwo
121 steptwo stepthree
2 stepthree stepfour
78 stepfour stepfive
6 stepfive stepsix
通常不應有任何分支/分裂,只是一系列連續的步驟或狀態。我不能使用簡單的alpha排序(在我的情況下,開始和結束值是由客戶創建的代碼),但無法找出任何其他方式使用SQL來排序。我可以使用大多數語言以編程方式執行此操作,但難以僅使用SQL進行操作。
任何聰明的想法?
是的,儘管如此,我仍然需要2個表來維護(並小心地保持同步),但實際上只有其中一個表需要保留步驟順序。如果有人在某個地方增加了額外的步驟,我還必須記得使用相同的信息更新該次表。我希望找到一種通過遍歷一個原始表來獲得排序順序的方法。 – user3357493