标签:
access2007案例查询讲解上岸的鱼 |
分类: 教育教学资源 |
ACCESS2007查询操作案例(分类)
http://s2/mw690/5e4516afgdc552450ecd1&690
设有数据库“rsda”,其中,数据表rsda包含以下字段:工号(C)、姓名(C)、性别(C)、出生年月(D)、部门(C)、婚否(L)、基本工资(N)、补贴(N)、公积金(N),应发工资(N)。(命令可以使用SQL语句)
选择查询:
1、
SELECT rsda.*
FROM rsda
WHERE (((rsda.部门)="总务处") AND ((rsda.性别)="男")) OR (((rsda.部门)="学生处") AND ((rsda.性别)="男"));
http://s6/mw690/5e4516afgdc9747e7a3c5&690
2、要求利用学号的前2位产生一个新字段“部门代码”,并在查询中显示原来的所有字段和“部门代码”字段。
SELECT Left([工号],2) AS 部门代码, rsda.*
FROM rsda;
http://s11/mw690/5e4516afg7c7587aaf40a&690
3、要求:统计rsda数据表中男性已婚职工的应发工资字段总和,并将结果赋给变量A52(或者新字段A52)。
SELECT Sum([应发工资]) AS A52
FROM rsda
WHERE (((rsda.性别)="男") AND ((rsda.婚否)=True));
http://s10/mw690/5e4516afgdc974d5d8339&690
4、要求:显示“基础部”每位老师所讲授的所有课程名。
SELECT rsda.部门, kcm.课程名
FROM kcm INNER JOIN rsda ON kcm.编号 = rsda.编号
WHERE (((rsda.部门)="基础部"));
http://s7/mw690/5e4516afgdc974e4e4126&690
5、要求:统计讲授“程序设计”课程的老师的基本工资的平均值,并将结果赋给变量A54(或者新字段A54)。
SELECT Avg([基本工资]) AS A54
FROM kcm INNER JOIN rsda ON kcm.编号 = rsda.编号
WHERE (((kcm.课程名)="程序设计"));
http://s8/mw690/5e4516afg7c7587edda47&690
6、要求:统计rsda数据表中部门为“基础部”的女性职工的基本工资字段总和,并将结果赋给变量A51(或者新字段A51)。
SELECT Sum([基本工资]) AS A51
FROM rsda
WHERE (((rsda.部门)="基础部") AND ((rsda.性别)="女"));
http://s4/mw690/5e4516afgdc97588e7813&690
7、要求:显示女教师讲授的所有课程名。
SELECT rsda.性别, kcm.课程名
FROM kcm INNER JOIN rsda ON kcm.编号 = rsda.编号
WHERE (((rsda.性别)="女"));
http://s8/mw690/5e4516afgdc975a6768b7&690
8、要求:统计rsda数据表中男性已婚职工的应发工资字段总和,并将结果赋给变量A52(或者新字段A52)。
SELECT Sum([应发工资]) AS A52
FROM rsda
WHERE (((rsda.性别)="男") AND ((rsda.婚否)=True));
http://s1/mw690/5e4516afg7c7589223560&690
9、要求:按照“出生年月”升序形式显示所有人员的信息。
SELECT rsda.*
FROM rsda
ORDER BY rsda.出生年月;
http://s3/mw690/5e4516afgdc975bf08be2&690
10、要求:列出rsda数据表中部门为“教务处”的女性职工的工号,姓名,性别和部门。
SELECT rsda.工号, rsda.姓名, rsda.性别, rsda.部门
FROM rsda
WHERE (((rsda.性别)="女") AND ((rsda.部门)="教务处"));
http://s16/mw690/5e4516afgdc975cb717ff&690
11、要求:显示讲课教师中年龄最小的教师的姓名和性别。
SELECT rsda.姓名, rsda.性别, rsda.出生年月
FROM rsda
WHERE (((rsda.出生年月)=(select max([出生年月]) from rsda)));
http://s3/mw690/5e4516afg7c758954a652&690
11-2、要求:显示讲课教师中年龄最大的教师的姓名和性别。
SELECT rsda.姓名, rsda.性别, rsda.出生年月
FROM rsda
WHERE (((rsda.出生年月)=(select min([出生年月]) from rsda)));
http://s15/mw690/5e4516afgdc975dfaf5ae&690
12、要求:统计rsda数据表中女性职工中补贴一项的最低值,并将结果赋给变量A58(或者新字段A58)。
SELECT Min([补贴]) AS A58
FROM rsda
WHERE (((rsda.性别)="女"));
http://s9/mw690/5e4516afg7c75897483c8&690
13、要求:统计讲授“英语写作”课程的老师的应发工资的平均值,并将结果赋给变量A56(或者新字段A56)。
SELECT Avg([应发工资]) AS A56
FROM kcm INNER JOIN rsda ON kcm.编号 = rsda.编号
WHERE (((kcm.课程名)="英语写作"));
http://s8/mw690/5e4516afgdc97626ba6e7&690
14、要求:按照“补贴”升序形式显示所有人员的信息。
SELECT rsda.*
FROM rsda
ORDER BY rsda.补贴;
http://s11/mw690/5e4516afg7c7589e82e4a&690
15、要求:显示所有未婚男教工的信息。
SELECT rsda.*
FROM rsda
WHERE (((rsda.婚否)=False) AND ((rsda.性别)="男"));
http://s12/mw690/001J2aN9gy72Dlhobs76b&690
16、要求:统计“张运生”讲授的课程门数,并将结果赋给变量A57(或者新字段A57)。
SELECT Count([课程名]) AS a57
FROM kcm INNER JOIN rsda ON kcm.工号 = rsda.工号
WHERE (((rsda.姓名)="张云生"));
http://s14/mw690/5e4516afgdc976454151d&690
17、要求:统计rsda数据表中男性已婚职工的应发工资的平均值,并将结果赋给变量A54(或者新字段A54)。
SELECT Avg([应发工资]) AS A54
FROM rsda
WHERE (((rsda.性别)="男") AND ((rsda.婚否)=True));
http://s12/mw690/5e4516afgdc9764f2131b&690
18、要求:将rsda数据表中“部门”字段的“学生处”改为“学生就业处”。
UPDATE rsda SET rsda.部门 = "学生就业处"
WHERE (((rsda.部门)="学生处"));
http://s4/mw690/5e4516afg7c758a2740d3&690
19、要求:显示女教师讲授的所有课程名。
SELECT rsda.性别, kcm.课程名
FROM rsda INNER JOIN kcm ON rsda.编号 = kcm.编号
WHERE (((rsda.性别)="女"));
http://s3/mw690/5e4516afgdc9766132502&690
20、要求:显示补贴的最小值和最大值,并将结果分别赋给变量minbt、maxbt。
SELECT Min([补贴]) AS minbt, Max([补贴]) AS maxbt
FROM rsda;
http://s13/mw690/5e4516afgdc9766a8e14c&690
21、要求:按照“基本工资”降序形式显示所有人员的信息。
SELECT rsda.*
FROM rsda
ORDER BY rsda.基本工资 DESC;
http://s13/mw690/5e4516afgdc97675d670c&690
22、要求:显示1980年(含1980年)后出生人员的工号和姓名。
SELECT rsda.出生年月, rsda.工号, rsda.姓名
FROM rsda
WHERE (((rsda.出生年月)>=#1/1/1980#) AND ((Year([出生年月]))>=1980));
http://s15/mw690/5e4516afg7c758a799dee&690
23、要求:统计讲授“程序设计”课程的老师的基本工资的平均值,并将结果赋给变量A54(或者新字段A54)。
SELECT ([基本工资]) AS A54
FROM kcm INNER JOIN rsda ON kcm.编号 = rsda.编号
WHERE (((kcm.课程名)="程序设计"));
http://s2/mw690/5e4516afg7c758a8d3cf1&690
24、要求:统计rsda数据表中男性职工中补贴一项的最高值,并将结果赋给变量A57(或者新字段A57)。
SELECT Max([补贴]) AS A57
FROM rsda
WHERE (((rsda.性别)="男"));
http://s13/mw690/5e4516afg7c758a9b417c&690
25、要求:为部门是“总务处”的职工每人增加15%的补贴(补贴=补贴*1.15)。
UPDATE rsda SET rsda.补贴 = [补贴]*1.15
WHERE (((rsda.部门)="总务处"));
http://s13/mw690/5e4516afgdc976ad7262c&690
26、要求:显示所有本年度已经过完生日(不含当日)的人员信息。
SELECT rsda.*
FROM rsda
WHERE (((Month([出生年月]))=(Month(Now()))) AND ((Day([出生年月]))<(Day(Now())))) OR (((Month([出生年月]))<(Month(Now()))));
http://s11/mw690/5e4516afgdc976b7a4c7a&690
27、要求:列出rsda数据表中部门为“基础部”的男性职工的工号,姓名,性别和部门。
SELECT rsda.工号, rsda.姓名, rsda.性别, rsda.部门
FROM rsda
WHERE (((rsda.性别)="男") AND ((rsda.部门)="基础部"));
http://s4/mw690/5e4516afg7c758ad1ca93&690
28、填写SQL命令,要求将所有男性职工的记录追加到名为“追加表”的表中,只需要其中的4个字段:姓名、性别、工资、补贴。
INSERT INTO 追加表 ( 性别, 姓名, 工资, 补贴 )
SELECT pay.性别, pay.姓名, pay.工资, pay.补贴
FROM pay
WHERE (((pay.性别)="男"));
http://s13/mw690/5e4516afgdc976cd9ec2c&690
29、要求:显示应发工资的最小值和最大值,并将结果分别赋给变量minyfgz、maxyfgz。
SELECT Min([应发工资]) AS minyfgz, Max([应发工资]) AS maxyfgz
FROM rsda;
http://s9/mw690/5e4516afgdc976e6dc4f8&690
30、要求:显示讲授“计算机文化基础”课程的每位老师的姓名、性别。
SELECT rsda.姓名, rsda.性别
FROM kcm INNER JOIN rsda ON kcm.编号 = rsda.编号
WHERE (((kcm.课程名)="计算机文化基础"));
http://s5/mw690/5e4516afgdc976fb6d384&690
31、要求:显示讲授“英语阅读”课程的每位老师的姓名、年龄。
SELECT rsda.姓名, (Year(Now()))-Year([出生年月]) AS 年龄
FROM kcm INNER JOIN rsda ON kcm.编号 = rsda.编号
WHERE (((kcm.课程名)="英语阅读"));
http://s15/mw690/5e4516afgdc97714d4d6e&690
32、要求:显示应发工资的最小值和最大值,并将结果分别赋给变量minyfgz、maxyfgz。
SELECT Min([应发工资]) AS minyfgz, Max([应发工资]) AS maxyfgz
FROM pay;
http://s7/mw690/5e4516afg7c758b73dcb6&690
33、要求:按照“出生年月”降序形式显示所有人员的信息。
SELECT rsda.*
FROM rsda
ORDER BY rsda.出生年月 DESC;
http://s10/mw690/5e4516afg7c758b893e59&690
34、列出工号前2位等于“11”的男性职工的信息。
SELECT rsda.*
FROM rsda
WHERE ((Left([rsda].[工号],2)="11") AND ((rsda.性别)="男"));
http://s7/mw690/001J2aN9gy72bVx5wJE16&690
35、要求物理删除1980年以前(不含1980年)出生年月的部门为“基础部”的职工记录。
DELETE rsda.出生年月, rsda.部门
FROM rsda
WHERE (((Year([出生年月]))<1980) AND ((rsda.部门)="基础部"));
http://s7/mw690/001J2aN9gy72bVGGyqye6&690
35、要求:显示女教师讲授的所有课程名。
SELECT kcm.课程名
FROM rsda, kcm
WHERE (((rsda.性别)="女"));
http://s1/mw690/5e4516afgdc9775ceddf0&690
36、要求:统计rsda数据表中男性职工中补贴一项的最高值,并将结果赋给变量A57(或者新字段A57)。
SELECT Max([补贴]) AS a57
FROM rsda
WHERE (((rsda.性别)="男"));
http://s6/mw690/5e4516afgdc9776d7b335&690
37、要求:按照“应发工资”降序形式显示所有人员的信息。
SELECT rsda.*
FROM rsda
ORDER BY rsda.应发工资 DESC;
http://s15/mw690/5e4516afg7c758bf2fa3e&690
38、要求:列出rsda数据表中部门为“总务处”和“学生处”的所有男性职工的信息。
SELECT rsda.*
FROM rsda
WHERE (((rsda.部门)="总务处") AND ((rsda.性别)="男")) OR (((rsda.部门)="学生处"))
ORDER BY rsda.性别 DESC;
http://s12/mw690/5e4516afgdc9778275ffb&690
39、要求:显示每位老师所讲授的所有课程名。
SELECT kcm.课程名
FROM kcm, rsda;
http://s13/mw690/5e4516afgdc9778be507c&690
40、要求:计算教务处人员的基本工资的平均值和最大值。
SELECT Avg([基本工资]) AS 表达式1, Max([基本工资]) AS 表达式2
FROM rsda
WHERE (((rsda.部门)="教务处"));
http://s8/mw690/5e4516afg7c758c272047&690
41、要求:按照“应发工资”降序形式显示所有人员的信息。
SELECT rsda.*
FROM rsda
ORDER BY rsda.应发工资 DESC;
http://s11/mw690/5e4516afg7c758c431ffa&690
42、要求:显示1980年(含1980年)后出生人员的工号和姓名。
SELECT rsda.工号, rsda.姓名
FROM rsda
WHERE (((Year([出生年月]))>=1980))
ORDER BY rsda.工号 DESC;
http://s4/mw690/5e4516afgdc977bc86f03&690
43、要求:计算补贴的平均值、公积金的平均值,并将结果分别赋给变量rjbt、rjgjj
SELECT Avg([补贴]) AS rjbt, Avg([公积金]) AS rjgjj
FROM rsda;
http://s5/mw690/5e4516afgdc977c8db4c4&690
44、设有数据库“rsda”,考Access的同学请下载文件“rsda.mdb”。(命令可以使用SQL语句)。要求将“姓名”字段作为参数,设定提示文本为“请输入学生姓名中任意一个字符”。查询结果显示5个字段:工号、姓名、性别、出生年月和应发工资。
FROM rsda
WHERE (((rsda.姓名) Like "*" & [请输入学生姓名中任意一个字符] &
"*"));
http://s13/mw690/001J2aN9gy72bXg54QI0c&690
45、设有数据库“rsda”,考Access的同学请下载文件“rsda.mdb”。(命令可以使用SQL语句)。要求将“姓名”字段作为参数,设定提示文本为“请输入学生姓名中任意一个字符”。查询结果显示3个字段:姓名、性别和部门。
FROM rsda
WHERE (((rsda.姓名) Like "*" & [请输入学生姓名中任意一个字符] &
"*"));
http://s16/mw690/001J2aN9gy72bXvMkAT0f&690
46、设有数据库“rsda”,考Access的同学请下载文件“rsda.mdb”。(命令可以使用SQL语句)。要求将“课程名”字段作为参数,设定提示文本为“请输入课程名中任意一个字符”。查询结果显示2个字段:工号和课程名。
SELECT rsda.工号, kcm.课程名
FROM kcm INNER JOIN rsda ON kcm.工号 = rsda.工号
WHERE (((kcm.课程名) Like "*" & [请输入课程名中任意一个字符] &
"*"));
http://s2/mw690/001J2aN9gy72bXSZPlnd1&690
47、要求并统计所有男生年龄的最大值,并把结果赋值给变量Z63。
SELECT
Year(Now())-Year([出生年月]) AS Z63
FROM rsda
WHERE (((rsda.性别)="男") AND ((Year(Now())-Year([出生年月]))=(select
max(year(now())-year([出生年月])) from rsda)));
http://s8/mw690/001J2aN9gy72bZtCs2Hd7&690
48、设有数据库“rsda”,考Access的同学请下载文件“rsda.mdb”。(命令可以使用SQL语句)。要求:列出rsda数据表中1980年以前出生的男性职工人员的工号和姓名。
FROM rsda
WHERE (((Year([出生年月]))<1980) AND
((rsda.性别)="男"));
http://s5/mw690/001J2aN9gy72h0bDygQ54&690
49、设有数据库“rsda”,考Access的同学请下载文件“rsda.mdb”。(命令可以使用SQL语句)。要求:列出rsda数据表中在1980年至1990年之间出生的职工人员的工号、姓名和部门。
SELECT rsda.工号, rsda.姓名, rsda.部门
FROM rsda
WHERE (((Year([出生年月])) Between 1980 And
1990));
http://s2/mw690/001J2aN9gy72h0mR3Bn11&690
50、设有数据库“rsda”,考Access的同学请下载文件“rsda.mdb”。(命令可以使用SQL语句)。要求:列出rsda数据表中在1985年1月1日以后出生的职工人员的工号、姓名和部门。
SELECT rsda.工号, rsda.姓名,
rsda.部门
FROM rsda
WHERE (((rsda.出生年月)>#1/1/1980#));
http://s1/mw690/001J2aN9gy72h0AdMuk30&690
FROM rsda;
http://s8/mw690/001J2aN9gy72oYdA5ZZ47&690
http://s13/mw690/5e4516afgdc55218e44fc&690