table 1   中有两个字段 日期 数额 
我想把日期为9-3的数额全都加起来,怎么做好。如果数额是字符型的怎么处理转化好?

解决方案 »

  1.   

    SQL语法中有一个Convert,你可以查一下
      

  2.   

    数额是数值型号的时候:
    select 日期,sum(数额) from table1 where 日期='2003-9-3' group by 日期 
     数额是字符型号的时候:
    select a.日期,sum(a.数额) from 
    (select 日期,convert(float,数额) as 数额 from table1) a where a.日期='2003-9-3' group by a.日期
      

  3.   

    table 1   中有两个字段 日期 数额 
    我想把日期为9-3的数额全都加起来,怎么做好。如果数额是字符型的怎么处理转化好?另外我可能要对不同的数额进行不同的处理,怎么做呀?
      

  4.   

    sql.add('Select * from Detail_rk where Rkssj=#'+edit1.text+'# ');
    或者
    sql.add('Select * from Detail_rk where Rkssj='''+edit1.text+'''');
    或者用access的话
    sql.add('Select * from Detail_rk where Rkssj=cdate('+edit1.text+')');
    或者用mssql的话
    sql.add('Select * from Detail_rk where Rkssj=cast('+edit1.text+' as datetime) ');
    应该都可以的。
      

  5.   

    不好意思,回错贴了
    或者用access的话
    cdouble(**)、cint(**)、csingle(**)等转换相应的数字类型
    或者用mssql的话
    cast(** as float)、cast(** as int)等转换
      

  6.   

    select a.日期,sum(a.数额) from 
    (select 日期,convert(float,数额) as 数额 from table1) a where a.日期='2003-9-3' group by a.日期
    同意dickeybird888(于伟刚)
    如果你要进行不同的处理,这要看你想要怎么处理了1!!
    根据条件呀!!!
      

  7.   

    select sum(convert(decimal(10,2),数额)) from 表 where convert(varchar,日期,112)=20030903