Access911.net   |   a9BBS   |   OTaA System  
  搜索文章:  
Access911欢迎您光临  
   主页      上传      繁體版       论坛     
设为首页  |  加入收藏   
  
你现在的位置:文章索引 -> 文章分类 -> 查询  
 首页|  近日更新|  下载  |  文章索引  |  搜索|  术语|  承接工程|  
 
系统正在加载内容,请耐心等待...
 
 查询
 窗体
 报表
 
 
 VBA
 函数
 ADO/DAO/ADO.NET
 API
 ADP
 安全
 发布
 OA
 ASP/ASP.NET
 其他语言
 控件
 DELPHI
 C#/.Net
 本站
 其他
 小例程
 常用软件
 参考文档
 业主作品
 网友大作
 
 
友情链接
 access911.net
 
访问人次
 1702324
 
站长 E-Mail
 net911@sina.com
 access911@gmail.com
 
RSS 订阅

显示附加信息 >>>

在ACCESS里面能够使用COMPUTE吗?

作者:未详  摘自:未详  :cg1  更新日期:2003-12-13  浏览人次:

 

问题:

COMPUTE 主题:  在ACCESS里面能够使用COMPUTE吗? 
如果可以使用的话,有没有什么限制啊?

 

回答:


目前好像还不支持,但是你可以用一个 SELECT 然后UNION ALL 一个 SELECT GROUP BY来解决的


关于 SQL SERVER 中 COMPUTE 的参考如下:
 Transact-SQL 参考 

 
COMPUTE 子句
生成合计作为附加的汇总列出现在结果集的最后。当与 BY 一起使用时,COMPUTE 子句在结果集内生成控制中断和分类汇总。可在同一查询内指定 COMPUTE BY 和 COMPUTE。

语法
[ COMPUTE
    { { AVG | COUNT | MAX | MIN | STDEV | STDEVP
        | VAR | VARP | SUM }
            ( expression ) } [ ,...n ]
    [ BY expression [ ,...n ] ] 

参数
AVG | COUNT | MAX | MIN | STDEV | STDEVP | VAR | VARP | SUM

指定要执行的聚合。下面是 COMPUTE 子句使用的行聚合函数:

行聚合函数 结果 
AVG 数字表达式中所有值的平均值 
COUNT 选定的行数 
MAX 表达式中的最高值 
MIN 表达式中的最低值 
STDEV 表达式中所有值的统计标准偏差 
STDEVP 表达式中所有值的填充统计标准偏差 
SUM 数字表达式中所有值的和 
VAR 表达式中所有值的统计方差 
VARP 表达式中所有值的填充统计方差 


没有等同于 COUNT(*) 的函数。若要查找由 GROUP BY 和 COUNT(*) 生成的汇总信息,请使用不带 BY 的 COMPUTE 子句。

这些函数忽略空值。

如果是用 COPPUT 子句指定的行聚合函数,则不允许它们使用 DISTINCT 关键字。

当添加或平均整数数据时,即使列的数据类型为 smallint 或 tinyint,SQL Server 也将结果视为 int 值。有关返回添加数据或平均数据的类型的更多信息,请参见 SUM 和 AVG。

说明  为减少在 ODBC 和 DB-Library 程序中溢出错误的可能性,请将平均或汇总结果的所有变量声明均作为数据类型 int。


( expression )

表达式,如对其执行计算的列名。expression 必须出现在选择列表中,并且必须将其指定为与选择列表中的某个表达式完全一样。在 expression 内不能使用在选择列表中指定的列的别名。

说明  在 COMPUTE 或 COMPUTE BY 子句中,不能指定 ntext、text 和 image 数据类型。


BY expression

在结果集内生成控制中断和分类汇总。expression 是 order_by_expression 在相关 ORDER BY 子句中的精确复本。一般情况下,这是列名或列的别名。可指定多个表达式。在 BY 后列出多个表达式可将一个组分成子组并在每个分组级别上应用聚合函数。

如果使用 COMPUTE BY,则必须也使用 ORDER BY 子句。表达式必须与在 QRDER BY 后列出的子句相同或是其子集,并且必须按相同的序列。例如,如果 ORDER BY 子句是:

ORDER BY a, b, c

则 COMPUTE子句可以是下面的任意一个(或全部):

COMPUTE BY a, b, c
COMPUTE BY a, b
COMPUTE BY a

说明  在带 COMPUTE 子句的 SELECT 语句中,选择列表中的列顺序替代 COMPUTE 子句中的聚合函数顺序。ODBC 和 DB-library 程序员必须知道这种顺序要求,以将聚合函数结果放在正确的位置。


由于包含 COMPUTE 的语句生成表并且这些表的汇总结果不存储在数据库中,因此在 SELECT INTO 语句中不能使用 COMPUTE。因而,任何由 COMPUTE 生成的计算结果不出现在用 SELECT INTO 语句创建的新表内。

当 SELECT 语句是 DECLARE CURSOR 语句的一部分时,不能使用 COMPUTE 子句。

 


 

 
相关文章
     没有手动相关文章
 
评论
     查看或发表更多的评论,请单击这里。
 
 
 
 
 
   
  Access911.net   |   a9BBS   |   OTaA System   |
建站日期:2000年4月2日  |  设计施工:陈格 ( access911 & cg1 )
 Copyright © 2000 - 2003 COMET, 陈格 保留所有权利