VFP考试中的SQL语句答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三、数据删除
1、 删除 cate 表中“分类编码”为“ 9001”的记录 delete from cate where 分类编码 =”9001”
2、 删除 chp 表中所有的小家电。 delete from chp where 分类编码 =(select 分类编码 where 种类名称 =”小家电 ”)
一、简单查询
Select 语句练习
1、显示 chp 表中的所有内容。
select * from chp
2、显示 cate 表中的所有内容。
select * from cate
3、显示 chp 表中所有“商品编码、商品名称、零售价”信息。
select商品编码 ,商品名称 ,零售价 from chp
4、显示“员工”表中所有“部门号、员工编号、姓名”信息。
insert
into
chp
values(“4204”,” 电

机 ”,”8001”,”9102”,{^2001/01/12},2000,2200)
3、定义一个数组 aa(2),令 aa(1)=”9001”,aa(2)=”白色家电 ”,用 Insert 命令把数组 aa 中的数据插入到表 cate 中。
from chp where year( 进货日期 )>2000)
四、排序
1、 显示 chp 表中所商品信息,按“进货价格”升序排序 select * from chp order by 进货价格
2、 显示 chp 表中“商品名称、零售价” ,按“零售价”降序排序 select 商品名称 ,零售价 from chp order by 零售价 desc 3、 显示 chp 表中“商品名称、进货日期、进货价格” ,按“进货
select max(零售价 ) from chp 6、 计算 chp 表中零售价之和 select sum(零售价 ) from chp 六、分组与计算查询
1、 按“分类编码”统计各类商品“进货价格”的平均值,按进货 价格平均升序排序
select 分类编码 ,avg(进货价格 ) as 平均值 from chp group by 分 类编码 order by 平均值 asc
sele * from 员工 where 姓名 like "J%" 二、简单的联结查询
1、 从“员工、 部门” 表显示所有员工的 “姓名” 及所在 “部门名”
select 员工 .姓名 ,部门 .部门名 from 员工 ,部门 where 员工 .部门 号 =部门 .部门号
2、 从“ chp 、cate”表显示所有商品零售价大于 30 商品的“商品 名称、种类名称、零售价”
1、 在 chp 表查询商品零售价大于等于同类商品零售价平均值的商 品信息。
ຫໍສະໝຸດ Baidu
sele * from chp a where a. 零售价 >(sele avg(b.零售价 ) from chp b where a.分类编码 =b.分类编码 ) 2、在员工表中查询各个部门员工的年龄大于其部门平均年龄的员 工信息。
日期” 升序排序,“进货价格”升序排序。
select 商品名称 ,进货日期 ,进货价格 进货价格
五、简单的计算查询
from chp order by 进货日期 ,
1、 计算 chp 表共有多少条记录 select count(*) from chp
2、 查询“员工”表中共有多少名员工 select count(*) from 员工 3、 计算 chp 表中零售价的平均值 select avg(零售价 ) from chp 4、 计算 chp 表中零售价的最小值 select min(零售价 ) from chp 5、 计算 chp 表中零售价的最大值
select 商品名称 ,零售价 from chp where 零售价 >100 into table chp2 brow
一、数据插入
操作功能练习
1、 用 Insert 命令向 cate 表中插入记录( ”8001”,”黑色家电 ”) inser into cate (分类编码,种类名称 ) values("8001"," 黑色家电 ") 2 、 用 Insert 命 令 向 chp 表 中 插 入 记 录 (“4204”,”电 视 机 ”,”8001”,”9102”,{^2001/01/12},2000,2200)
select * from chp where 分类编码 =(select 分类编码 from cate where 种类名称 ='饮料 ') 4、 从“员工、部门”表显示所有“部门名”为“公共关系部、财
务部”的人员信息。
select 员工 .*,部门 .部门名 from 员工 ,部门 where 员工 .部门号 = 部门 .部门号 and 部门 .部门名 in (" 公共关系部 "," 财务部 ") 或:
1、 查询 chp 表中数据并把查到的结果放入 aa 临时表中。用 browse 命令查看 aa中的内容。
select * from chp into cursor aa
brow
2、查询 cate 表中数据并把查到的结果放入 命令查看 bb 中的内容。
bb 临时表中。 用 browse
select * from cate into cursor bb brow 四、将查询结果存放到永久表中
1、 查询 chp 表中数据并把查到的结果放入永久表 browse 命令查看 chp1 表中的内容。
select * from chp into dbf chp1 brow
chp1 中。用
2、 查询 chp 表中零售价大于 100 的“商品名称、零售价”信息, 并把查到的结果放入永久表 chp2 中。用 browse 命令查看 chp2 表中的内容。
select * from chp where 供 应 商 编 码 ="8001".and. 进 货 日 期 >{^2001-11-09}
11、显示“员工”表中性别为男且年龄在 号、姓名、年龄、性别”信息。
20 到 40 之间的“员工编
select 员 工编号 ,姓名 , 年 龄 ,性别 from 员工 where 性别 =" 男 ".and. 年龄 between 20 and 40 12、显示“员工”表中所有“姓名”以“ J”开头的员工信息。
2、 按“分类编码”统计各类商品的数量大于等于
3 的商品。
Select 种类名称 ,count(*) as 数量 from chp,cate where chp. 种类名 称 =cate. 种类名称 group by 分类编码 having 数量 >=3
3、 按“部门号”统计各部门员工的人数 select 部门号 ,count(*) as 人数 from 员工 group by 部门号
select 商品 名称 ,种类 名称 , 零售 价 from cate,chp where 零售 价 >30 .and. cate.分类编码 =chp.分类编码
3、 从“chp 、cate”表显示所有“种类名称”为“饮料”的商品信 息
sele chp.*,cate.种类名称 from cate ,chp where 种类名称 =”饮 料 ”.and. cate.分类编码 =chp.分类编码 或者
Select * from chp where 分类编码 =”1001”
8、显示 chp 表中所有“零售价”大于 20 并小于 50 的商品信息。
sele * from chp where 零售价 between 20 and 50
9、显示 chp 表中“供应商编码”为 8001 或 7101 的商品信息。
sele * from chp where 供应商编码 ="8001".or. 供应商编码 ="7101" 或
select * from chp where 供应商编码 in(“8001”,”7101”)
10、显示 chp 表中“供应商编码” 为 8001 且“进货日期” 大于 2001 年 11 月 9 日的商品信息
Dimension a(2) aa(1)="9001"
aa(2)=" 白色家电 " inse into cate from array aa 二、数据更新
1、 把 cate 表中“分类编码”为“ 9001”记录的“种类名称”字段 值改为“化妆用品”
update cate set 种类名称 =" 化装用品 " where 分类编码 ="9001"
select部门号 ,员工编号 ,姓名 from 员工
5、显示“员工”表中所有不同的“部门”
select distinct(部门号 ) from 员工
6、显示 chp 表中所有不同的“分类编码”
select distinct(分类编码 ) from chp
7、显示 chp 表中所有“分类编码”为 1001 的商品信息。
select * from 员工 where 部门号 in (select 部门号 from 部门
where 部门名 ="公共关系部 ".or.部门名 =" 财务部 ") 三、嵌套查询
1、 找出和“ Liu ”在同一个部门其他员工
select * from 员工 where 部门号 in (select 部门号 from 员工 where 姓名 ="Liu") 2、 找出在 2000 年以后进过哪些种类的商品。 (显示种类名称) select 种类名称 from cate where 分类编码 in (select 分类编码
2、 把 chp 表中“进货日期”在 2000 年之后进货的商品零售价提 高 10%。
update chp set 零 售 价 = 零 售 价 *(1+0.1) where 进 货 日 期 >={^2000-1-1}
3、 把“小家电”所有商品的进货价格下降 10%。 update chp set 进 货价格 = 进 货价格 *0.9 where 分类编码 =(select 分类编码 from cate where 种类名称 = ”小家电 ”)
select * from cate into array bb display memory like bb
1
3、 查询 chp 表中零售价大于 100 的“商品名称、零售价”信息, 并把查到的结果放入 cc 数组中。用 display 命令查看 cc 数组中的内 容。
select商品名称 ,零售价 from chp where 零售价 >100 into array cc display memory like cc 三、将查询结果放在临时文件中
4、 显示部门员工人数大于 3 的“部门号、员工人数” 。 sele 部门号 ,count(员工编号 ) as 员工人数 from 员工 group by 部门号 having 员工人数 >3
5、 显示部门员工人数大于 3 的“部门名、员工人数” 。 select 部门 .部门名 ,count(*) from 部门 ,员工 where 部门 .部门号 = 员工 .部门号 group by 员工 .部门号 having count(*) 七、内外层相互嵌套查询
desc
1、 查询 chp 表中数据并把查到的结果放入 aa 数组中。用 display 命令查看 aa 数组中的内容。
select * from chp into array aa
disp memo like aa
2、查询 cate 表中数据并把查到的结果放入 命令查看 bb 数组中的内容。
bb 数组中。用 display
from cate
3、 删除 chp 表中“零售价” <10 的记录 delete from chp where 零售价 <10
sele * from 员工 a where a.年龄 >(sele avg(b.年龄 ) from 员工 b where a.部门号 =b.部门号 )
SELECT 的几个特殊选项练习 一、显示部分结果
1、 显示 chp 表中零售价最低的三种商品
select * top 3 from chp order by 零售价 2、 显示 chp 表中零售价最高的 30%的商品 select * top 30 percent from chp order by 零售价 二将查询结果存放到数组中
相关文档
最新文档