主题:讨教:如何统计两个费用各自之和
yin710
[专家分:0] 发布于 2010-02-10 23:24:00
各位老师:请指教,如何统计数据表两个费用各自之和和总人数。财政费用总和及个人费用总和及总人数。谢谢老师回答。
回复列表 (共5个回复)
沙发
狐说八道 [专家分:860] 发布于 2010-02-11 08:46:00
可以的,但你没给出结构和结果要求,不好回答
板凳
yin710 [专家分:0] 发布于 2010-02-11 09:36:00
老师好,数据表有字段:姓名,年龄,地址....财政费用,个人费用。结果想:统计代码能把一定时间内的总人数、财政费用之和、个人费用之和统计出来。表单和报表。谢谢
3 楼
wzxc [专家分:9440] 发布于 2010-02-11 10:21:00
相关求和命令
1、SUM 命令
对当前选定表中的所有或指定的数值型字段求和。
SUM [eExpressionList] [Scope] [FOR lExpression1] [WHILE lExpression2]
[TO MemVarNameList | TO ARRAY ArrayName] [NOOPTIMIZE]
2、CALCULATE 命令
CALCULATE eExpressionList [Scope] [FOR lExpression1] [WHILE lExpression2]
[TO VarList | TO ARRAY ArrayName] [NOOPTIMIZE]
[IN nWorkArea | cTableAlias]
eExpressionList
指定表达式,该表达式可以包含下列函数的任意组合: AVG(nExpression) CNT( ) 或 COUNT( ) MAX(eExpression) MIN(eExpression) NPV(nExpression1, nExpression2 [, nExpression3]) STD(nExpression) SUM(nExpression) VAR(nExpression) ,用逗号分隔表达式列表 eExpressionList 中的函数。这些函数仅用于 CALCULATE 命令,在本部分后面将详细说明这些函数。不要与有相似名称的独立函数相混淆。例如, CALCULATE MIN( ) 与 MIN( ) 不同。
SUM( nExpression)
对 nExpression 求和。只有满足 Scope 和/或 可选的 FOR 或 WHILE 条件的记录才包含到结果中。
3、SELECT - SQL 命令
从一个或多个表中检索数据。当使用 SQL SELECT 创建查询时,Visual FoxPro 解析查询并从表中检索指定的数据。可以从“命令”窗口、Visual FoxPro 程序或使用查询设计器来创建 SQL SELECT 查询。有关使用 SQL SELECT 的更多信息,请参阅 SQL SELECT 语句的注意事项 帮助主题。
SQL SELECT 命令的完整语法显示如下:
SELECT [ALL | DISTINCT] [TOP nExpr [PERCENT]] Select_List_Item [, ...]
FROM [FORCE] Table_List_Item [, ...]
[[JoinType] JOIN DatabaseName!]Table [[AS] Local_Alias]
[ON JoinCondition [AND | OR [JoinCondition | FilterCondition] ...]
[WITH (BUFFERING = lExpr)]
[WHERE JoinCondition | FilterCondition [AND | OR JoinCondition | FilterCondition] ...]
[GROUP BY Column_List_Item [, ...]] [HAVING FilterCondition [AND | OR ...]]
[UNION [ALL] SELECTCommand]
[ORDER BY Order_Item [ASC | DESC] [, ...]]
[INTO StorageDestination | TO DisplayDestination]
[PREFERENCE PreferenceName] [NOCONSOLE] [PLAIN] [NOWAIT]
可以在 Select_Item (即字段或包含字段的表达式)中,或在 HAVING 子句的筛选条件内部使用聚集函数。但是,聚集函数不能嵌套。
下表列出了可以用于 SQL SELECT 语句中的聚集函数。
聚集函数 说明
AVG( )
计算数值型数据列的平均值。
COUNT( ) 或 CNT( )
统计某列中选定项的数目。COUNT(*) 统计查询输出重的行数。
MIN( )
确定某列中 Select_Item 的最小值。
MAX( )
确定某列中 Select_Item 的最大值。
SUM( )
统计数值型数据列的总和。
4 楼
狐说八道 [专家分:860] 发布于 2010-02-12 09:49:00
select count(*) 人数, sum(财政费用) 财政费用合计, sum(个人费用) 个人费用合计 from 数据表 where between(时间, 时间1, 时间2)
5 楼
yin710 [专家分:0] 发布于 2010-02-12 13:05:00
先谢谢楼上各位老师,祝老师们春节愉快。我再试试有问题再问。另外如果在select count(*) 人数,sum(财政..)....这个代码里再加上财政费用总计除以个人费用总计乘上%如何做呢?谢谢!
财政费用总计
——————*100%
个人费用总计
我来回复