cast(field1 as float)/field2
两个数中任意一个转换为浮点数后,整型的就会转换为浮点数再进行运算

解决方案 »

  1.   

    SELECT CAST(Field1*1.0/Field2 as numeric(10,2)) result
     FROM Table1
      

  2.   

    cast(field1 as float)/field2
    or
    convert(float,field1)/field2
      

  3.   

    SELECT case field2 when 0 then 0.0 else Field1/Field2*1.0 end FROM Table1
      

  4.   

    SELECT Field1/(Field2+0.0) FROM Table1
      

  5.   

    SELECT Field1/(Field2+0.0) FROM Table1
    或:
      SELECT 1.0*Field1/Field2 FROM Table1
    原理是只要把一个字段变成非整型就可以了。如果你还想要精确到2位小数的话加上 cast(XXX  as  numeric(10,2))如:  SELECT cast(1.0*Field1/Field2 as numeric(10,2)) FROM Table1
      

  6.   

    select cast(field1 as float)/cast(field2 as float) from table1