VFP程序设计基础实验指导 下载本文

select 姓名,性别,年龄,职称 from zgda where 性别=\男\号 && 等同于:where 性别 like \男\

select 姓名,性别,年龄,职称 from zgda where 职称=\讲师\性别 asc,年龄 desc select 姓名,性别,年龄,职称 from zgda where 年龄 between 40 and 50 &&包括40和50 select 姓名,性别,年龄,职称 from zgda where 年龄 >= 40 and 年龄 <=50 &&与上一句等价

select 姓名,性别,年龄,职称 from zgda where 年龄 not between 40 and 50 &&年龄不在40和50范围内

select * from zgda where 姓名 like \刘%\ &&查询所有姓刘的记录 select * from zgda where 姓名 like \王_\ &&查询所有姓王且姓名只有两个字符的记录 select 姓名,性别,年龄,职称 from zgda where 姓名 not like \王%\ &&查询所有不姓王的记录

where后面的特殊运算符(in ;between and ;like)

select 姓名,性别,年龄,职称 from zgda where 姓名 in ( \刘\王\ &&查姓刘和姓王的记录,与下一语句等价。

select 姓名,性别,年龄,工资,职称 from zgda where 姓名 =\刘\姓名 =\王\ select 姓名,性别,年龄,职称 from zgda where 职称 in (\讲师\副教授\select 姓名,性别,年龄,职称 from zgda where 职称=\讲师\职称=\副教授\注:in 运算符:判断表达式的值是否等于指定列表中几个值中的一个 select 职称,avg(年龄) from zgda group by 职称 &&查每种职称的职工平均年龄

select 职称,avg(年龄) 平均年龄from zgda group by 职称 &&同时给表达式avg(年龄) 命名为 平均年龄

***将上面的两条语句中的avg换成sum后,再运行,看功能是什么?

select 职称,avg(年龄) from zgda group by 职称 having avg(年龄)>40 &&平均年龄>40的分组会显示

select max(年龄) from zgda &&查表中最大年龄值,最小用min

select职称,max(年龄) from zgda group by 职称 &&查每种职称的职工最大年龄,最小用min

select count(*) 职工人数 from zgda &&查表中人数,职工人数为自定义别名 select count(性别) from zgda &&查性别字段值的行数(计重复值) 结果为:8

select count(distinct 性别) from zgda &&查性别字段值的行数(不计重复值)结果为:2

select 性别,count(*) 职工人数 from zgda group by 性别 &&查男女职工人数,职工人数

为自定义别名 查询去向:

select * from zgda where 性别='女' into table dagirl &&查女生记录,存于表dagirl中(use dagirl/list看结果)

select * from zgda where 性别='男' into cursor temp &&查男生记录,存于临时表temp中(list看结果)

select * from zgda where 性别='男' into array AA &&查男生记录,存于数组AA 中(display memory 看结果)

select * from zgda where 性别='男' to file da additive &&以追加方式存于文本文件da.txt 中(无additive,覆盖方式)

将上一条语句改为:to screen &&结果送到主屏幕;to printer &&结果送到打印机 连接查询:

? 查询出给职工E3发订购单的供应商的信息.(下面的几条语句功能相同)

select g.供应商号,供应商名,地址 from 供应商 g,订购单 d where d.供应商号=g.供应商号 and 职工号=\

select g.供应商号,供应商名,地址 from 供应商 g inner join 订购单 d on d.供应商号=g.供应商号 where 职工号=\

select 供应商号,供应商名,地址 from 供应商 where 供应商号 in (select 供应商号 from 订购单 where 职工号=\)

select * from 供应商 g where exist (select * from 订购单 d where d.职工号=“E3” and d.供应商号=g.供应商号)

? 查询出没有给职工E3发订购单的供应商的信息.

select * from 供应商 g where not exist (select * from 订购单 d where d.职工号=“E3” and d.供应商号=g.供应商号)

? 上机调试教材中的下列例子:(所用的源文件在教材中光盘中的vpf1文件夹,拷贝后要

去掉”只读”属性)

13.9---13.10---13.11---13.12---13.13---13.14----13.24---13.25---13.26---13.27---13.29---13.30---13.35