我一直在思考这个问题,但找不到解决方案(可能很简单。)
我有一个包含两列的表,显示哪些 ID 已连接,即属于同一个人。
在此示例中,只有三个人,但其中一个人具有三个唯一 ID。
PID | EPID
---------+--------
10004835 | 10004835
10015375 | 10015375
10015375 | 10019859
10019859 | 10015375
10019859 | 10019859
10019859 | 10000000
10000000 | 10019859
10020104 | 10020104
我想要做的只是在此表中添加一列,为每个唯一的个体提供唯一的代码。这就像
PID | EPID | NPID
---------+----------+-----
10004835 | 10004835 | 1
10015375 | 10015375 | 2
10015375 | 10019859 | 2
10019859 | 10015375 | 2
10019859 | 10019859 | 2
10019859 | 10000000 | 2
10000000 | 10019859 | 2
10020104 | 10020104 | 3
附言。我正在使用 sqlite3,所以请不要在答案中递归。
编辑:除非我能找到适用于 SQLITE3 的解决方案,否则我将不得不使用 MYSQL。在那种情况下,有人知道包含递归的解决方案吗?