total命令怎么用

GingerbreadMan 2007-03-05 10:41:59
小弟刚学VFP,有表t1如下:
id desc quan
a a1 67
b b1 34
c c1 45
a a2 56
b b2 34
.
.
.
用total to t2 on id命令后,t2 与 t1一样,
请问:
1.请问total命令怎么用?
2.该命令将数值字段汇总,对表中其他非数值如何处理?
...全文
656 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
十豆三 2007-03-05
  • 打赏
  • 举报
回复
计算当前选定表中数值型字段的总和。


TOTAL TO TableName ON FieldName [FIELDS FieldNameList] [Scope]
[FOR lExpression1] [WHILE lExpression2] [NOOPTIMIZE]


 

参数
TableName

指定将要进行总计的表名。如果指定的表不存在,Visual FoxPro 创建它。如果表存在且 SET SAFETY 为 ON,Visual FoxPro 询问用户是否覆盖已存在的表。如果 SET SAFETY 为 OFF,不会询问,而是直接覆盖。
FieldName

指定统计时作为分组依据的字段。表必须以此字段排序,或者打开的索引或索引标识必须以此字段作为关键字表达式。
FIELDS FieldNameList

指定要统计的字段。用逗号分隔列表中的字段名。如果省略 FIELDS 子句,默认统计所有数值型字段。
Scope

指定参加统计的记录范围。TOTAL 的默认范围是所有记录(ALL)。范围子句可以是:ALL, NEXT nRecords, RECORD nRecordNumber, 和 REST。有关范围子句的更多信息,请参见 范围子句。
FOR lExpression1

指定一个条件,只有符合指定的逻辑条件 lExpression1 的记录才在统计范围内。如果 lExpression1 是一个可优化表达式,Rushmore 查询优化技术将优化 TOTAL ... FOR 创建的查询。为了获得最佳性能,应在 FOR 子句中使用可优化表达式。更详细的信息,请参见 SET OPTIMIZE 和 使用 Rushmore 查询优化数据访问速度。
WHILE lExpression2

指定一个条件,当逻辑表达式 lExpression2 结果为真时(.T.),当前表的记录才包含在统计之中。*译者注:直至遇到第一条为假(.F.)的记录为止。
NOOPTIMIZE

禁止对 TOTAL 进行 Rushmore 优化。更详细的信息,请参见 SET OPTIMIZE 和 使用 Rushmore 查询优化数据访问速度。
备注
当前选定工作区中的表必须进行了排序或索引。对具有相同字段值或唯一索引关键字值的各组记录分别统计。结果放置在另一个表的记录中,还为每个相同字段值或唯一索引关键字值在此表中创建一条记录。

如果另一张表中的数值型字段不足以容纳统计结果,将发生数值溢出。当发生数值溢出时,Visual FoxPro 保存统计结果中最重要的部分。此时字段缩小接收统计值:

小数位被截断,对统计值剩余的小数位进行圆整。

如果统计值仍然不适合,例如统计值包含7位或以上数字,将采用科学计数法表示。

最后,用星号代替字段内容。

十豆三 2007-03-05
  • 打赏
  • 举报
回复
use t1
index on id to sy
total to t2 on id

2,723

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧