select sum(jn_fenshu) as '分数',
(
   select max(x) from (select sum(jn_fenshu) as 'x' from jifennote group by jn_userid) as x
) - sum(jn_fenshu) as '和第一名差了'
from jifennote
where jn_userid=@id当没这个比如@id=3,表里字段id没有3,那么分数 和第一名差了
null null我想实现的效果是分数 和第一名差了
null 1000应该怎么写呢..

解决方案 »

  1.   

    select sum(jn_fenshu) as '分数',
    (
      select max(x) from (select sum(jn_fenshu) as 'x' from jifennote group by jn_userid) as x
    ) - isnull(sum(jn_fenshu),0) as '和第一名差了'
    from jifennote
    where jn_userid=@idtry
      

  2.   


    select sum(jn_fenshu) as '分数',
    (
      select isnull(max(x),0) from (select isnull(sum(jn_fenshu),0) as 'x' from jifennote group by jn_userid) as x
    ) - isnull(sum(jn_fenshu)) as '和第一名差了'
    from jifennote
    where jn_userid=@id基本同楼上!