Select send_sa as as a,isnull(send_sk,0) as b,Convert(float,send_sa)+Convert(float,isnull(send_sk,0)) as c
from sendwrk_hx

解决方案 »

  1.   

    或者
    Select Cast(send_sa as float) as a,Cast(isnull(send_sk,0) as float) as b,Cast(send_sa as float)+Cast(isnull(send_sk,0) as float) as c
    from sendwrk_hx
      

  2.   

    二楼的仁兄,我也知道这么做哦,呵呵,其实我写的以上语句只是个例子语句,真正要解决问题的SQL语句由于太长,我不便写出,这里我想要的是别名的相加,而不是字段的相加。
      

  3.   

    SELECT a+b as c from (Select Cast(send_sa as float) as a,Cast(isnull(send_sk,0) as float) as b from sendwrk_hx)
      

  4.   

    Select Cast(send_sa as float) as a,Cast(isnull(send_sk,0) as float) as b,
    Cast(send_sa as float)+Cast(isnull(send_sk,0) as float) as c
    from sendwrk_hx
      

  5.   

    六楼的仁兄写的有点问题,应该是这么写
    SELECT a+b as c from (Select Cast(send_sa as float) as a,Cast(isnull(send_sk,0) as float) as b from sendwrk_hx) d 
    其中d是由括号内的SELECT语句生成derived_table 的别名
    不错,不错,启迪了我的思维
    送分,送分,Kelph()
    高手,高手!
      

  6.   

    我的问题还要复杂,我的是:
    SELECT   a+b   as   c,c+a as d   from   (Select   Cast(send_sa   as   float)   as   a,Cast(isnull(send_sk,0)   as   float)   as   b   from   sendwrk_hx)   d 
      

  7.   

    若这样的话是不是只能这样解决:
    select e.c+d.a+d.b as x from
      (SELECT d.a+d.b as c from 
        (Select Cast(send_sa   as   float) as a,Cast(isnull(send_sk,0) as float) as b from sendwrk_hx) s  as d) as e
    有没有更好的方法?