a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 96|回复: 0

[Visual FoxPro] 2011年度计算机等级考试二级VFP基础教程(50)

[复制链接]
发表于 2012-7-31 22:17:54 | 显示全部楼层 |阅读模式
 6.3 查询(query)(三)  三。生成SQL语句:不论是使用向导还是使用"查询设计器",其结果都是生成一条SQL语句。可以通过选择"查询"菜单(或者快捷菜单)中的"查看SQL"菜单项或单击"查询设计器"工具栏上的"SQL"按钮,即可看到所生成的select-sql语句。
$ J; @" S. E# u' o9 ?  一般情况下,用查询设计器创建查询的目的是通过交互设置,生成SQL命令,然后复制下来,粘贴到应用程序中或保存到查询文件中。如果对select-sql比较熟悉,完全可以不使用查询。. R" C* ?' y  b9 K7 e
  3.生成查询文件:查询创建完成后,单击"常用"工具栏上"保存"按钮或"文件"下的"保存"命令,输入文件名,比如Query1,系统自动为该文件加上扩展名。QPR,即生成了查询文件Query1.QPR.该文件中保存的是SQL语句。
$ X0 ^; l6 N  K/ _& i4 I( q  四。运行查询:( U8 N1 x1 {; C# ^
  (1).在项目管理器打开的情况下,选择查询文件,单击"项目管理器"上的"运行"按钮。
8 K  k  s+ K* r& S/ J; b  (2)在查询文件打开的情况下,单击"常用"工具栏上的"运行"按钮或"查询"菜单中的"运行查询"命令,即可运行查询。
# ^1 o9 @& d4 X  (3)在命令窗口或应用程序中用DO命令运行查询,例如:do Query1.QPR& v& k. f- ?$ R+ D) U9 {9 d
  五。例一:查询男女职工人数,工资总额及平均工资,并按平均工资降序排序。查询输出必须包括性别,人数,工资总额和平均工资。) |% c9 t. j; r9 C& J& }
  分析:本例按性别进行分组,即把所有性别相同的记录压缩成一个记录。利用count(),sum()和avg()函数可以对每一组记录进行计数,求和及求平均值。另外还有max()是求最大值函数,min()是求最小值函数。0 y& r% ~0 V$ f8 T
  1.新建一个查询,选"职工档案"表,在"查询设计器"对话框的"字段"选项卡中将下列字段和表达式设置到"选定字段"列表框中,如图60
8 F8 O/ x" P( ]& e5 S: K 8 o- d( J% _" h- [0 _" Q
  向"选定字段"列表添加表达式"count(*) as 人数"的方法:在"函数和表达式"文本框中输入表达式"count(*) as 人数",然后单击右侧的"添加"按钮即可,如图61,
' M. I, a) k4 M" ~2 f% _/ C
9 E- [% X5 ]1 N# Z# g  这里,给表达式"count(*)"起了一个别名"人数".% X3 S8 z9 m+ N3 Q
  2.在"排序依据"选项卡中,选择"avg(职工档案。工资)"作为排序条件,设置为降序排序。% z9 m/ ~" V- |
  3.在"分组依据"选项卡中,把"可用字段"中的"职工档案。性别"字段添加到"分组字段"中。这样就完成了本例的查询要求。3 e/ d4 k9 |# J4 }) }
7 G8 }& ]+ Y# g/ C
  4.如果在分组的基础上,还要对查询结果记录进行筛选,可以单击在"分组依据"选项卡中的"满足条件"按钮,打开"满足条件"对话框,例如输入"avg(职工档案。工资)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-7 08:51 , Processed in 0.165798 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表