四句话
1. 分析句子结构
(1) 找出谓语,也即是命令动词;
(2) 找出宾语,也即是命令动词作用的对象; (3) 找出限制定语,也即是条件(for字句)。
2. 对于我们写出的命令语句,句中出现的所有汉字必须是数据表中的字段名,对于不是字段名的汉字要加上引号。
3. 英文书写要正确,切忌所有标点符号都必须在英文状态下输入。 4. 一定要审清题目,看清各字段的数据类型,以便正确的书写命令,尤其区分逻辑型数据(L)和字符型数据(C)。 数据库题
已知:数据表如下,包含以下字段:工号(C)、姓名(C)、性别(C)、部门(C)、婚否(L)、工作日期(D)、工资(N)、补贴(N)、公积金(N),应发工资(N)。(填写命令时,均不考虑表的打开和关闭。)
1、显示命令——List [范围] [fields <表达式>] For <条件>(补充教材21页)
示例:
(1)列出部门为办公室的人员信息 List for 部门=”办公室”
(2) 列出部门为办公室的女性人员信息 List for 部门=”办公室” and性别=”女”
(3) 列出部门为办公室女性的姓名,婚否,出生日期
List for 部门=”办公室” and 性别=”女” fields 姓名,婚否,出生日期
(4)列出部门为“财务科”的女性职工的工号,姓名,性别和部门 list all fields 工号,姓名,性别,部门 for 部门=\财务科\性别=\女\
(5)列出工号前2位等于“01”的男性职工的信息 list all for left(工号,2)=\ and 性别=\男\ 练习:
(1)列出部门为“财务科”和“研发部”的所有女性职工的信息
List for 部门=”财务科” and性别=”女” or 部门=”研发部” and性别=”女”
2、批替换命令——Replace [范围] <字段名1> with <表达式1>, … [for <条件>](补充教材26页)
示例:
(1)为8月份参加工作的职工每人增加55元补贴 replace 补贴 with 补贴+55 for month(工作日期)=8 练习:
(1)计算并替换每一条记录中的“公积金”字段(公积金=工资*0.05) Replace 公积金 with 公积金*0.05
(2)为部门是“财务科”的职工每人增加12%的补贴(补贴=补贴*1.12) Replace 补贴 with 补贴*1.12 for 部门=”财务科”
(3)将工号前4位是“0202”的职工所属部门改为“出纳科” Replace 部门 with “出纳科” for left(工号,4)=“0202”
(4)在“工资”字段中,为2000年以前(不含2000年)参加工作的职工每人增加270元 Replace 工资 with 工资+270 for year(工作日期)<2000
3、物理删除命令——Delete[范围] for <条件>(补充教材27页) Pack
示例:
要求物理删除2000年以后(含2000年)参加工作的部门为“研发部”的职工记录 DELETE ALL FOR YEAR(工作日期)>=2000 AND 部门=\研发部\Pack 练习:
要求逻辑删除1990年以前(不含1990年)参加工作的部门为“办公室”的职工记录 4、指针定位命令——locate [for <条件>](补充教材37页)
示例:
要求将记录指针定位在第一条05年参加工作的男性职工记录 LOCATE FOR YEAR(工作日期)=2005 AND 性别=\男\
5、索引命令——Index on 关键字 to 索引名字 (补充教材33页)
示例:
(1)要求以出生日期为索引关键字建立一个结构复合索引文件,索引名字为“cshrq” Index on 出生日期 to cshrq
(1)要求以工资和姓名为为索引关键字建立一个结构复合索引文件,索引名字为“xmgz” INDEX on STR(工资,7,2)+姓名 to xmgz
6、统计命令——sum,average,count,calculate(补充教材38\\39页) SUM [范围] [求和列表] [FOR <条件>] [TO 变量列表] 示例:
(1)统计部门为“财务科”的女性职工的工资字段总和,并将结果赋给变量A51 SUM 工资 TO A51 FOR 部门=\财务科\性别=\女\
(2)统计部门为“财务科”的女性职工的工资字段平均值,并将结果赋给变量A52 Average 工资 TO A52 FOR 部门=\财务科\性别=\女\(3)统计女性职工中补贴一项的最低值,并将结果赋给变量A58 calculate min(补贴) to A58 for 性别=\女\练习:
(1)统计女性职工中工资不超过1800元的人数,并将结果赋给变量A56 Count to A56 for 工资<=1800
(2)统计男性职工中补贴一项的最高值,并将结果赋给变量A57
calculate max(补贴) to A57 for 性别=\男\
7、排序命令——Sort [fields <表达式>] on fieldname[/D] to tablename
示例:
按照“性别”降序生成一个名为“人事表2”的新表,其中包含4个字段:工号、姓名、性别和部门。 Sort fields工号,姓名,性别,部门 on 性别/D to人事表2
VF小结:
1、数据类型:字符型(C),数值型(N),逻辑型(L),日期型(D) 2、命令结构
基本结构:命令动词 [
left(),right(),year(),month(),max(),min(),str()等。 4、for条件的构造
运用逻辑运算符(NOT,AND,OR)连接关系表达式
例如:
(1)财务科的女同志的记录
FOR 部门=\财务科\性别=\女\
(2)2000(包含2000年)年参加工作且为研发部的记录
FOR YEAR(工作日期)>=2000 AND 部门=\研发部\ (3)工号第3,4位为01的记录
For substr(工号,3,2)=”01”
(4)部门为“财务科”和“研发部”的所有女性职工的记录 For (部门=”财务科” or部门=”研发部” ) and 性别=”女”