>则全转为大写
4.通配符:
一般在条件式中的书写,和查找功能中会使用到。
必须要掌握的*,#,?
(具体内容见第二章书上)
5.注意:
必须掌握!
!
!
!
1)access查询中:
凡是涉及到某字段,字段名一定要用中括号括起[](一定是英文状态下的即半角标点),
A.当涉及多个表时,还必须要指明表名(如学生表和成绩表里都有姓名字段,必须确定是指哪个表中的姓名字段)这时表名也需要用中括号括起[],表名和字段名之间用感叹号!
连接
例如:
学生表中的姓名字段(表名是学生,字段名是姓名)则表示为[学生]!
[姓名]
成绩表中的姓名字段(表名是成绩,字段名是姓名)则表示为[成绩]!
[姓名]
B.access中当要引用窗体和报表中的某控件中的值时,和引用表中的字段的方法是一样的
例如:
引用窗体名为fTemp中的控件名称为tAge的值
则表示为forms!
[fTemp]!
[tAge]forms千万不能忘记写,为了说明我们是要引用窗体里的值。
引用报表名为fTemp中的控件名称为tAge的值
则表示为reports!
[fTemp]!
[tAge]reports千万不能忘记写,为了说明我们是要引用报表里的值。
2)而在VBA语句中,也会有引用窗体和报表的值的情况,与access中方法是一样的,唯一区别就是,不需要用方括号[]括起了,无论是表名、窗体名、报表名、字段名、控件名都不需要使用方括号。
例如:
forms!
fTemp!
tAge
Ø但如果是在函数中的话,也不需要用中括号[],都要用双引号""括起
例如:
DLookUp(“名称”,”tGroup”,”所属部门=部门编号”)是从tGroup表里检索出名称并输入,而这个名称则是根据条件:
由所属部门字段值所对应的部门名称。
(本例子见真题第二套操作题:
三,综合应用题的第(3)小问
关于Dlookup函数及其他相关VBA函数请看第七章PPT的P65~P69)
3)access中在条件行中涉及到字符串,一定要用双引号""(一定是英文状态下的即半角标点),将字符串括起,
例如:
not“女”
4)当涉及日期时一定要用##(一定是英文状态下的即半角标点),将日期括起
例如:
#1991-1-1#或者#1991/1/1#
5)查询中的字段行
一般,字段行显示的就是字段名,整一列就说明是对相应字段的操作。
例如:
下面的查询代表的意义是:
查询tScore表中的学号字段>”2001102315”或者<”2001102310”的记录按照降序排列并显示其学号列
即只要是学号大于2001102315的,小于2001102310的都会被查出来,求的是并集,而非交集!
这个学号2001102315和20011202310为什么都加了引号呢?
因为学号这个字段的属性是文本类型的,而非数字型。
文本型的是字符串,是不是要加双引号啊?
所以这么几个重复在讲的原则都永远存在。
而特殊的字段行,即是计算字段!
例如:
我们表中只有学号字段,而没有班级字段,班级字段的值如何获得呢?
一般是要求通过截取学号字段的前4位数的值!
或者别的要求,大家就具体问题具体分析。
这要用到left函数
大家看到字段行,我们只是输入了后半部分left([学号],4)以后按回车键,就自动添加上了前面的表达式1这几个字,运行后结果显示列名是表达式1
,根据题目的要求,需要显示的是班级,就把表达式1改成班级
运行
。
这里要注意!
!
表达式1和班级后面的冒号一定是英文状态下的!
6)查询中的总计行
大家注意到总计行并不是一开始就有的,需要我们点击汇总按钮才出来
一般的选择查询不需要用到它,只有涉及到计算字段、求最大、最小、合计、平均时才用到。
我们针对前一个例子再说明下总计行的用法:
依旧是班级字段
1 总计行选择groupby
结果
因为groupby函数是分组的意思
2 总计行选择合计
结果
把每行的内容求和
3 这个是重点需要理解的
这个结果我只截取了部分,expression是表达式的意思。
他就单纯将字段列表达式的意义显示出来而已,即,只是把学号的前四位取出来了,既不分组也不求和等等。
。
4
5
对所有行的个数求和。
注意和合计区分!
6
求平均值
7
8 至于where的用法,想显示成绩>91分的同学的班级号
发现出现错误
正确做法,成绩行添加两列,一列作为显示;一列作为条件,不需要显示,总计行使用了where;
where的用法就是指所遵循的法则是条件行中的法则。
结果是
✓同样想达到效果,总计行完全可以取消
结果一样。
✓但是如果想分组之类的就肯定不能取消
结果就是找包含成绩>91分的班级有哪些
✓
>91分的分数有哪些。
说明表中91分以上的没有考93分94分等等分数
✓
又将班级分组,又将成绩分组。
✓注意上面:
在查询中班级字段在最左边,结果显示就在最左边,大家注意下面的和上面的区别
所以,一定按题目要求的顺序写,不要白白丢分。
9 如果我们想求平均成绩字段,就需要通过成绩字段来计算,用到avg函数对吧!
a.
这个是不是直接将成绩行求了平均值
看,查询字段名给自动改为了成绩之平均值,看着名字又臭又长,想改?
看下列
b.在a的基础上,在成绩之前加了平均值:
(注意这个冒号一定是英文状态下的!
!
)
结果一样
c.第三种方法
注意此时没有总计行,因为此时只涉及的这一列,总计行可有可无。
结果就是对所有的成绩求了平均
d.但是,如果还有别的列,需要将别的列分组然后再求平均,要分组,必然需要总计列调出
所以,平均成绩列由于涉及到将字段计算了,总结行用了expressio,而课程编号的总计行用的是分组groupby结果就是按照每门课程求了平均成绩
e.上几种求平均的方法注意区分,其实理解透了一点都不难,如果求和的话需要用到sum函数,大家自己练习一下,我还是重点讲下求平均,当按上几种方法求出的平均值大家看到了,小数位数很多,一般题目要求的结果,小数位数都没有,即是对结果取了整数,或是四舍五入了。
需要用到三个函数,已经讲过的int(),fix(),round(),一般不涉及到负数的话,我们常用的是int()和round()
Øa~c的3个例子中,平均值结果是73.75988.若题目要求输出显示为73,相当于取整了,而非四舍五入,用到int函数,这里只能在c方法的基础上去做进一步的写法,a法和b法没办法。
所以完整写法:
int(avg([成绩]))
Ø若题目要求输出显示为74,相当四舍五入,用到round函数,这里只能在c方法的基础上去做进一步的写法,a法和b法没办法。
Ø对于e例子中有三个结果,就要综合判断了,如果题目要求显示结果是
说明是四舍五入了,应该
Ø若显示结果是
则说明是取了整,则
好啦!
很好理解的。
大家应该不会再有什么疑惑了吧?
F.在字段行,求最大成绩和取整后的平均成绩之差,怎么弄?
Ø还可以这里平均成绩没取整
结果,可以把字段名自己改!
~
Ø还可以
结果一样吧?
至于平均成绩的小数数位有细微差别不需要去考虑,这是系统根据函数本身做的处理,不是大家需要去考虑的。
好,总计行的用法就是这样,大家根据题目要求自己判断需要使用到哪个。
多加练习,勤思考。
7)参数查询中的条件行。
必须用到的一个符号[]
咱们在条件行根据题目要求进行编写条件表达式,在条件行每输入一个[],等运行时就会跳出一个对话框,并且对话框中的提示信息的内容就是条件行中[]里我们输入的内容。
然后由用户在这个对话框里输入内容。
再进行相关查询。
✓参数查询的条件行和其他查询的的条件行共同点?
都是条件!
✓参数查询与其他查询的区别?
参数查询的条件需要自行输入值。
这个值就是我们在跳出的对话框里输入的内容!
这个对话框怎么跳出来?
在条件行中有几个[],就会依次跳出几个对话框。
但是因为最前面要求:
表名、字段名、窗体名、报表名都要用[]括起,所以进行参数查询时如果括号里的内容是表名字段名等等,就不会跳出对话框了,就会当成表或者字段的作用了。
。
例如:
非参数查询中,要求查找分数大于91分的学生信息
参数查询中,同样也可以达到要求:
查找到分数大于91分的学生信息。
注:
关于参数查询的题目一般会这样要求:
运行查询时,屏幕上显示提示信息:
“请输入要比较的分数!
”
这个条件行的意思是大于提示信息框中输入的内容!
点了运行按钮则跳出左边的对话框,然后根据要求输入内容,或者不需要输入。
效果是和前面的一样的!
✓对于这个题目的要求我需要强调两点:
1)题目说运行查询时屏幕上显示提示信息。
这句话的意义是什么?
---因为参数查询的提示框要等点了运行按钮
运行了才会跳出来。
2)屏幕上显示提示信息:
“请输入要比较的分数!
”。
这句话要注意的!
这第一个冒号:
和双引号“”不需要写到条件中去,这符号纯粹是语文的符号用法,它是为了说明冒号之后引号里面的内容是题目要求的需要显示的提示信息!
即我标红的字体!
!
6.关于查询中的SQL语句部分,大家下去先仔细看看PPT和做相关题目,下学期不明白的有时间会再讲解一下。
7.关于表的一些注意事项:
必须掌握!
!
!
!
1)在遇到其他题目要求是也是一样的,例如:
在设置表的有效性规则和有效性文本时,题目要求是:
将入学时间的有效性规则设置为:
1991年1月1日以前的时间。
有效性文本:
“请输入1991年1月1日以前的日期!
”千万不能在有效性规则里直接输入:
1991年1月1日以前的日期。
这个是人能读懂的句子,软件它不懂,软件它只识别咱们讲过的函数,运算符等等组成的表达式!
你输入系统不会提醒你错了,但是这个规则无效,也是错的。
千万不能在有效性文本的输入里把双引号和冒号加入。
正确写法!
!
如下面!
2)在表中,会有字段值的输入设置为列表显示
比如性别直接以列表框显示为“男”和“女”供选择,这个列表框的应用在窗体,报表中也有应用,方法一样!
首先设置列表显示之前,字段属性都是提前设置好了的,性别字段时文本型的
接下来在性别字段的数据类型里选中查阅向导
设置完后在性别字段的查阅部分就显示为如下形式