【发布时间】:2011-11-07 19:41:14
【问题描述】:
我们的数据按以下格式排序。第一列是我们的系统编号,第二列是后端系统编号,第三列表示具有 ParentCol 值的行实际上低于 Col1 的匹配行。 (所以第 20 项有两个附加部分,第 30 项和第 50 项。)
Col1 Col2 ParentCol
10 100 NULL
20 200 NULL
30 201 20
40 300 NULL
50 202 20
10 400 NULL
...
这只是一个小例子 - 每个订单有时可能有数百行。从在 UI 中查看数据的角度来看,应用程序没有很好地处理这种情况。理想情况下,我希望内容像这样排序,我们的 ID 号 (Col1) 是主要排序,但是当有与我们的 ID 匹配的 ParentCol 值时,后端 ID 号 (Col2) 应该立即跟随:
Col1 Col2 ParentCol
10 100 NULL
10 400 NULL
20 200 NULL
30 201 20
50 202 20
40 300 NULL
使用 T-SQL,我将如何编写一个根据需要返回数据的查询?由于我们的编号方案 Col1(但不是后端列 Col2)中的各种编号方案和可能的有效重复值,我无法弄清楚这一点。
谢谢,
斯科特
【问题讨论】:
标签: tsql