深圳升蓝软件
数据库开发 .Net技术  |  ASP技术 PHP技术 JSP技术 应用技术类   
Hiblue Software

ado如何使用sql函数?


March 25,2004
SQL函数

    使用SQL函数,您可以在一个SELECT语句的查询当中,直接计算数据库资料的平
均值、总数、最小值、最大值、总和、标准差、变异数等统计。使用Recordset对象
时,也可使用这些SQL函数。

SQL函数包括如下:



Avg函数:计算查询中某一特定字段资料的算术平均值。

Count函数:计算符合查询条件的记录数。

Min, Max函数:传回指定字段之中符合查询条件的第一条、最末条记录的资料。

First, Last函数:传回指定字段之中符合查询条件的最小值、最大值。

StDev函数:计算指定字段之中符合查询条件的标准差。

Sum函数:计算指定字段之中符合查询条件的资料总和。

Var,函数:计算指定字段之中符合查询条件的变异数估计值。


ADO如何使用SQL函数呢?

譬如ASP程式码rs21.asp,在用户端使用浏览器,浏览执行的结果,显示执行SQL函数
的结果。

ASP程式码rs21.asp如下:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ=" & Server.MapPath("ntopsamp.mdb") & ";Driver=
{Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Set rs2 = Server.CreateObject("ADODB.Recordset")

SqlStr = "SELECT Avg(价格) As 平均 From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>Avg: " & rs2("平均")

rs2.Close

SqlStr = "SELECT Count(价格) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>Count(价格): " & rs2(0)

rs2.Close

SqlStr = "SELECT Count(*) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>Count(*): " & rs2(0)

rs2.Close

SqlStr = "SELECT Sum(价格) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>Sum: " & rs2(0)

rs2.Close

SqlStr = "SELECT Min(价格) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>Min: " & rs2(0)

rs2.Close

SqlStr = "SELECT Max(价格) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>Max: " & rs2(0)

rs2.Close

SqlStr = "SELECT First(价格) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>First(价格): " & rs2(0)

rs2.Close

SqlStr = "SELECT Last(价格) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>Last(价格): " & rs2(0)

rs2.Close

SqlStr = "SELECT First(代号) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>First(代号): " & rs2(0)

rs2.Close

SqlStr = "SELECT Last(代号) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>Last(代号): " & rs2(0)

rs2.Close

SqlStr = "SELECT StDev(价格) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>StDev: " & rs2(0)

rs2.Close

SqlStr = "SELECT Var(价格) From 产品"

rs2.Open SqlStr,conn1,1,1

Response.Write "<BR>Var: " & rs2(0)

rs2.Close

conn1.Close

%>

SQL函数,详细描述如下:

Avg函数

Avg函数,计算查询中某一特定字段资料的算术平均值。

    语法为Avg(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可
以是一个内部或使用者定义的,但不能为其它的SQL函数。

Avg函数在计算时,不包含任何值为 Null 的资料。

Count函数

Count函数,计算符合查询条件的记录条数。

    语法为Count (运算式)。运算式,可为字段名称、*、多个字段名称、运算式、
或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的SQL函数。

Count 函数於计算时,不包含任何值为 Null 的资料。

但是,Count(*) 则计算所有符合查询条件的记录条数,包含那些Null的资料。

    如果Count(字段名称) 的字段名称为多个字段,将字段名称之间使用 & 分隔。
多个字段当中,至少有一个字段的值不为Null的情况下,Count函数才会计算为一条
记录。如果多个字段都为Null,则不算是一条记录。譬如:

SELECT Count(价格 & 代号) From 产品

First/Last函数

    First函数、Last函数,传回指定字段之中符合查询条件的第一条、最末条记录
的资料。

    语法为First(运算式) 和 Last(运算式)。运算式,可为字段名称、运算式、或
一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的SQL函数。

Min/Max函数

    Min函数、Max函数,传回指定字段之中符合查询条件的最小值、最大值。

    语法为Min(运算式) 和 Max(运算式)。运算式,可为字段名称、运算式、或一个
函数,此函数可以是一个内部或使用者定义的,但不能为其它的SQL函数。

StDev函数

StDev函数,计算指定字段之中符合查询条件的标准差。

    语法为StDev(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数
可以是一个内部或使用者定义的,但不能为其它的SQL函数。

    如果符合查询条件的记录为两个以下时,StDev函数将传回一个Null 值,该表示
不能计算标准差。

Sum函数

Sum函数,计算指定字段之中符合查询条件的资料总和。

    语法为Sum(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可
以是一个内部或使用者定义的,但不能为其它的SQL函数。

Sum函数可使用两个字段资料运算式,譬如计算产品的单价及数量字段的合计:

SELECT Sum(单价 * 数量) FROM 产品

Var函数

Var函数,计算指定字段之中符合查询条件的变异数估计值。

    语法为Var(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可
以是一个内部或使用者定义的,但不能为其它的SQL函数。

    如果符合查询条件的记录为两个以下时,Var函数将传回一个Null 值,该表示不
能计算变异数。
Copyright © 2001-2008 Shenzhen Hiblue Software Team All rights reserved