select t.a, t.a-10 as b from (select (sum("数值字段1")+sum("数值字段2")) as a from B where id = 'xx') t

解决方案 »

  1.   

    select a,
           [b]=a-10
    from
        (
          select [a]=sum([数值字段1])+sum([数值字段2]) 
          from B where id = 'xx'
        )t
      

  2.   

    要一句完成的话,要这样写才行:
    (select sum("数值字段1")+sum("数值字段2") from B where id = 'xx')-10
      

  3.   

    select t.a, t.a-10 as b from (select (sum("数值字段1")+sum("数值字段2")) as a from B where id = 'xx') t
      

  4.   

    如果保持和TB的行数相等:select a,
           [b]=a-10
    from
        (
          select [a]=(
                       select sum([数值字段1])+sum([数值字段2]) 
                       from B where id = 'xx'
                     )
           from TB
        )t
      

  5.   

    or:select T.a,
           [b]=T.a-10
    from TB
    join (
           select [a]=sum([数值字段1])+sum([数值字段2]) 
           from B where id = 'xx'
          )T on 1>0
      

  6.   

    To:vivianfdlpw() 
    感谢你的回复
    可能是我还没有说清楚select (select sum("数值字段1")+sum("数值字段2") from B where id = 'xx') as a , a-10,c,
    d as b from TB我还想从TB表中取得其他的值。像你上面说的好像不可以阿~~我from TB表往那里放阿