寻求利用SQL对数据进行分组的帮助,请各位大神出手相助,万分谢谢。
具体内容如下:
Oracle表A
ID SJ SJID XJ XJID
1 南京市 6100 玄武区 6100100
2 南京市 6100 秦淮区 6100200
3 南京市 6100 鼓楼区 6100300
4 无锡市 6200 锡山区 6200100
5 无锡市 6200 梁溪区 6200200
6 无锡市 6200 惠山区 6200300
7 徐州市 6300 云龙区 6300100
8 徐州市 6300 泉山区 6300200
9 。。。。。。。。。。。。。
10。。。。。。。。。。。。。
我想对其进行随机分组,每次都是不一样的、随机的配对。相当于生成一张对应表用于不同区(XJ)之间进行相互监督,
要求:
1、同一市(SJ)内区(XJ)之间不能相互监督(不能出现南京市的A监督南京市的B);
2、区(XJ)之间不能相互监督自己(即:不能出现A监督B,同时B又监督A);
3、区(XJ)自己不能监督自己(不能出现A监督A)。
要生成类似下面这种形式的对应关系表:
ID SJ SJID XJ XJID BJDSJ BJDSJID BJDXJ BJDXJID
1 南京市 6100 玄武区 6100100 无锡市 6200 梁溪区 6200200
2 徐州市 6300 云龙区 6300100 南京市 6100 鼓楼区 6100300
3 无锡市 6200 梁溪区 6200200 南京市 6100 秦淮区 6100200
4 无锡市 6200 惠山区 6200300 南京市 6100 玄武区 6100100
5 。。。。。。。。
6。。。。。。。。。