有下表:请问如何写SQL语句,要能够显示测试结果!T1品名   A1      A2       A3      A4     ..A1    1.00    -0.37    0       -0.18  ..
A2    -0.37   1.00     -0.37   0.28   ..
A3    -0.18   -0.37    1.00    -0.75  ..
A4    -0.18   0.28     -0.75   1.00   ..
..    ..      ..       ..      ..     ..
上表为对称矩阵,即对角线处都为1.00,对角线上下两侧值相对称。列值为除品名外,其余为A1~An,列品名值也为A1~An,与列相对称。要求:1)只判断T1以1.00对角线以上的一半矩阵即可(这是必须,不然会有重复),要求循环比较。
      2)即依次循环行每一列,两两组合,如果A1与A1组合值为1则不处理,如A1与A2组合值小于0则将(A1,A2)添加到T2表  中的[结果值][flag]字段中,并标识flag为-1,如组合值大于0则flag为1即可。请问语句应如何写?  

解决方案 »

  1.   

    即循环依次为  (就是从第一行开始,即从品名为A1的值开始)行品名为A1与列A1相交值、A1与A2相交值、... 、A1与An相交值。第二行循环从A2与A2开始,直到A2与An结束;第三行从A3与A3开始直到A3与An结束,一直到最后一行An与An比较。
      

  2.   

    T2表样式:结果值           flag
    (A1,A2)       -1
    (A1,A3)        0
    (A1,A4)       -1
    (A2,A3)       -1
    (A2,A4)        1
    (A3,A4)       -1