【发布时间】:2015-09-04 02:46:11
【问题描述】:
我正在使用 MS SQL Server Management Studio。我有桌子 -
+--------+----------+
| Num_ID | Alpha_ID |
+--------+----------+
| 1 | A |
| 1 | B |
| 1 | C |
| 2 | B |
| 2 | C |
| 3 | A |
| 4 | C |
| 5 | A |
| 5 | B |
+--------+----------+
我想从该表中创建另一个包含 2 列的表,以便 column_1 给出 Num_ID 中的唯一值(即 1、2、3、4 等),column_2 给出 Alpha_ID 中的唯一值(A、B、C 和很快)。
但如果一个字母表已经出现过,它就不应该再次出现。所以输出将是这样的 -
Col_1 Col_2
================
1 - A
----------------
2 - B
----------------
3 - NULL (as A has been chosen by 1, it cannot occur next to 3)
----------------
4 - C
----------------
5 - NULL (both 5 A and 5 B cannot be chosen as A and B were picked up by 1 and 2)
----------------
希望这是有道理的。 我想澄清一下,输入表中的 ID 不是我显示的数字,但 Num_ID 和 Alpha_ID 都是复杂的字符串。为了这个问题,我已将它们简化为 1,2,3,... 和 A,B,C ....
【问题讨论】:
-
可能想在此处处理您的格式。这是不可读的。
-
我开始编辑这个,但想不出一个描述性的名称,所以我继续前进。
-
我试图修正标题;如有错误,请指正。
-
@GordonLinoff 请看一下这个问题,谢谢。
-
使用 Microsoft SQL Server Management Studio 11.0.2100.60
标签: sql sql-server