不知道你的结果意义如果,从字面上理解,a表和b表分别按字段2排序,得到各自字段1的权重,然后两个表按字段1合并得到合并后的权重,最终你想要最小的权重,是这个意思不,如果是,换个思路就是:a表和b表通过字段1关联,并按字段2合并,字段2最小的就是你要的结果:SELECT a.字段1,
       SUM(a.字段2 + b.字段2)
  FROM a,
              b
 WHERE a.字段1= b.字段1
 GROUP BY a.字段1
HAVING SUM(a.字段2 + b.字段2) = (SELECT MIN(SUM(a.字段2+ b.字段2))
                               FROM a,
                                           b
                              WHERE a.字段1= b.字段1
                              GROUP BY a.字段1)