0
Q
自反協會
A
回答
1
,這可能是你的問題的解決方案,而無需FK_idTecnFK,PK_idTecn使用遞歸CTE
DECLARE @T TABLE (IdTech INT, IdTechFK INT, Name VARCHAR(255))
INSERT INTO @T VALUES
(1, NULL, 'FRT'),
(2, 1, 'FRT_1'),
(3, 1, 'FRT_2'),
(4, NULL, 'GSC filters'),
(5, 4, 'GSC filters_1'),
(6, 4, 'GSC filter_2'),
(7, 1, 'FRT_3'),
(8, 1, 'FRT_4'),
(9, NULL, 'Power Control')
SELECT a.IdTech, a.IdTechFK, a.Name
FROM (
SELECT m.IdTech, m.IdTechFK, m.Name, m.IdTech AS r FROM @T AS m
WHERE m.IdTechFK IS NULL
UNION ALL
SELECT c.IdTech, c.IdTechFK, c.Name, c.IdTechFK AS r FROM @T AS c
WHERE c.IdTechFK IS NOT NULL) AS a
ORDER BY a.r, idtech, IdTechFK
結果
+-------+---------+--------------+
|IdTech |IdTechFK |Name |
+-------+---------+--------------+
|1 |NULL |FRT |
|2 |1 |FRT_1 |
|3 |1 |FRT_2 |
|7 |1 |FRT_3 |
|8 |1 |FRT_4 |
|4 |NULL |GSC filters |
|5 |4 |GSC filters_1 |
|6 |4 |GSC filter_2 |
|9 |NULL |Power Control |
+-------+---------+--------------+
相關問題
- 1. Rails的ActiveRecord的反向協會
- 2. 主義協會擁有VS反方
- 3. 獲取來自協會
- 4. 自我指涉協會
- 5. ActiveRecord - 自引用協會
- 6. Rails - 自我參照協會
- 7. Rails協會不會自動保存
- 8. Rails - 協會,用戶對用戶的反饋 - 顯示反饋
- 9. 協會
- 10. 協會
- 11. 過濾協會由另一個協會
- 12. Rails協會:一種方式協會
- 13. UML類協會在遞歸協會
- 14. Rails的自定義IDS破協會
- 15. 導軌:自我指涉協會
- 16. Rails has_many自定義ActiveRecord協會
- 17. OSX自定義擴展圖標協會
- 18. 自加入類的Rails協會
- 19. 自我協會保留相關記錄
- 20. 雙向自我指涉協會
- 21. 來自繼承工廠的FactoryGirl協會
- 22. 自參照協會:N + 1問題
- 23. decent_exposure與自我指涉協會
- 24. Rails - 多態自加入模型協會
- 25. 雙向自我指涉協會
- 26. DevExpress自我參照協會的問題
- 27. 自定義OneToOne休眠/ JPA協會
- 28. 自我指涉「孿生」 HAS_ONE協會
- 29. Ruby類協會
- 30. CakePHP的協會
秩序? –
你想如何處理空值?該名字是應該訂購還是僅僅是巧合? – owczarek
您需要遞歸CTE來計算層次路徑和按路徑排序。請參閱示例http://stackoverflow.com/questions/14241936/how-can-i-generate-a-hierarchy-path-in-sql-that-leads-to-a-given-node – Serg