是不是想这样比如说员工姓名    配偶姓名    保险费
A            B          10
B            A          10
C            D          20

如果A、B全部在公司则每人只有自己的一份
如果两夫妻只有一人在公司上班则有两份
对不对?

解决方案 »

  1.   

    --如果如我上面所说,那就分开来算吧
    --两夫妻全部在公司,我这里
    select 员工姓名,配偶姓名 ,10 from tableName a
    where exists(select 1 from tableName where 员工姓名=a.配偶姓名 and 配偶姓名=b.员工姓名)
      

  2.   

    --只有一个人在公司的
    select 员工姓名,配偶姓名 ,2*10 from tableName a
    where  not exists(select 1 from tableName where 员工姓名=a.配偶姓名 and 配偶姓名=b.员工姓名)