【发布时间】:2019-11-19 15:54:16
【问题描述】:
我有一个包含以下数据的表:
ADD_Col Data OrderId Output NEW_ADD Col1 Col2
----- ------ ------- -----> ------- -------- -------
AD*A*1 A 96 A 1 2
AD*A*1 B 95 B 1 1
AD*A*1 C 94 C 0.8 1
AD*A*1 D 93 D 5 2
AD*A*2 1 92
AD*A*2 1 91
AD*A*2 0.8 90
AD*A*2 5 89
AD*A*3 2 88
AD*A*3 1 87
AD*A*3 1 86
AD*A*3 2 85
这些数据都在同一个表中,我需要将每个字母链接到每个因素。我正在考虑做一个ROW_NUMBER() 并根据各自的行号加入,并为我的字母分配相同的数字或DENSERANK。实现这一目标的最佳方法是什么?如果可以,请提供查询示例,非常感谢。
【问题讨论】:
-
什么定义了数据的顺序?我看不到任何东西可以使用
ORDER BY保留该订单;让你的要求变得不可能。 -
抱歉,您说得对,我可以使用的另一列是订单 ID。添加到示例。
-
我强烈建议不要对列名使用保留关键字。
-
这只是一个例子,并没有在我的代码中使用。我在提供的示例中对此进行了更改。
标签: sql sql-server join row-number