sql select sum

来源:百度知道 编辑:UC知道 时间:2024/09/23 01:26:11
Set rstemp= Server.CreateObject("ADODB.Recordset")
rstemp.open "select sum(fukuanjine) from 9fukuanmingxi",conn,3,1
response.write rstemp(0)
set rstemp=nothing

哪里错?
出来的和小数部分超级多

你的精度设置的有问题,你可以用round函数设置一下需要保留的位数

select round(sum(fukuanjine),2) from 9fukuanmingxi

例如四舍五入两位小数

你在数据库执行 select sum(fukuanjine) from 9fukuanmingxi 的结果是什么?
如果也有很多小数,那么如果保留四位小数:
select convert(numeric(18,4),sum(fukuanjine)) from 9fukuanmingxi

如果这里得到的结果没有那么多小数:

假设得到的结果是a,那么
<%@ page import="java.text.DecimalFormat" %>
<%@ page import="java.math.BigDecimal"%>
String b1= new BigDecimal(new java.text.DecimalFormat("############.0000").format(java.lang.Double.parseDouble(a))).toString;

select sum(fukuanjine) from 9fukuanmingxi
=========================================
对统计的字段进行数据类型转换即可,字段最好取个别名

select convert(numeric(10,2),sum(fukuanjine)) sums from 9fukuanmingxi

这样的结果是两位小数的,你统计的是付款金额,不建议用四舍五入法。

Set rstemp= Server.CreateObject("ADODB.Recordset")
rstemp.open "select round(sum(fukuanjine),2) from 9fukuanmingxi"