我已经实现了一个链表作为自引用数据库表:
CREATE TABLE LinkedList( Id bigint NOT NULL,ParentId bigint NULL,SomeData nvarchar(50) NOT NULL)
其中Id是主键,ParentId是列表中上一个节点的Id.第一个节点有ParentId = NULL.
我现在想从表中选择SELECT,按照它们应该出现的顺序排列行作为列表中的节点.
例如:如果表包含行
Id ParentId SomeData 24971 NULL 0 38324 24971 1 60088 60089 3 60089 38324 2 61039 61497 5 61497 60088 4 109397 109831 7 109831 61039 6
然后使用条件排序,应该导致:
Id ParentId SomeData 24971 NULL 0 38324 24971 1 60089 38324 2 60088 60089 3 61497 60088 4 61039 61497 5 109831 61039 6 109397 109831 7
你应该使用SomeData colum作为控件,所以请不要通过SomeData作弊ORDER 原文链接:https://www.f2er.com/mssql/82075.html