2查询.docx

上传人:b****4 文档编号:12311817 上传时间:2023-04-18 格式:DOCX 页数:15 大小:54.56KB
下载 相关 举报
2查询.docx_第1页
第1页 / 共15页
2查询.docx_第2页
第2页 / 共15页
2查询.docx_第3页
第3页 / 共15页
2查询.docx_第4页
第4页 / 共15页
2查询.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

2查询.docx

《2查询.docx》由会员分享,可在线阅读,更多相关《2查询.docx(15页珍藏版)》请在冰豆网上搜索。

2查询.docx

2查询

《查询》笔试要点

查询部分知识点,笔试中所占比例较大,分值一般在8~10分左右。

主要考擦查询类型、各类查询的作用及设计要点、查询准则(表达式)、SQL语句。

其中查询准则的书写,即表达式的书写是重中之

重;可以毫不夸张的说,掌握了表达式的书写,二级ACCESS至少可拿1/4的分;因为表达式贯穿了字段属性的有效性规则、筛选、查询规则、窗体报表的计算控件、宏条件书写、VBA语句代码各部分内容。

一、认识查询:

查询能够将一个或多个表中的数据抽取出来,提供用户查看、更改和分析使用。

查询可以作为窗体、报表和数据库访问页的记录源。

(1)查询主要功能(以下每种查询的功能注意背诵)

1、选择字段:

查询可从一个或多个表中选取感兴趣的字段,可以实现通过选择一个表中不同字段生成所需的多个表。

2、选择记录:

选择出满足指定条件(查询准则)的数据记录。

3、编辑记录:

利用操作查询,可以对表中的记录进行添加、修改、删除操作。

4、实现计算:

查询可以对数据进行各种统计计算,如求平均成绩等。

也可建立计算字段来保存计算的结果。

5、建立新表:

查询结果可以作为一个表保存起来。

6、建立基于查询的报表、窗体:

查询是一个动态集合,可从多个表中选择合适的数据,作为其他查询、窗体或报表的数据源。

知识要点:

1、查询可以编辑数据、实现计算、建立表。

2、查询结果是一个动态的集合。

(2)ACCESS中的5类查询:

选择查询、交叉表查询、参数查询、操作查询、SQL查询。

(3)创建查询的两种方法:

查询设计视图、查询向导

(4)查询的三种视图。

1、设计视图:

显示如上图的查询设计界面。

2、数据表视图:

显示查询作用于数据的结果,可用于查看查询是否正确。

3、“SQL视图”:

显示当前查询的SQL语句。

(5)计算字段。

实质上就是在设计网格的字段行中,输入表达式,系统根据该表达式计算出一系列值,作为查询结果中的一列。

一般计算字段要与字段重命名相结合,将计算的列赋予一个指定标题。

例如:

要求创建“教龄”计算字段,可在设计网格的字段行中输入

教龄:

year(date())-year([工作时间])

(6)设计查询的基本步骤:

(参照select查询语句)

1、确定数据源(FROM):

将查询所涉及到的数据源(可以是数据表、查询)添加到设计器上部。

2、确定查询结果所需字段(SELECT):

利用鼠标可以将查询中所需的字段拖动到“字段”行中。

并根据该字段在结果中是否显示,确定显示字段。

3、确定数据筛选条件(WHERE):

选取满足条件的元组。

4、确定结果分组依据(GROUPBY):

把查询记录按照某些字段进行分组。

(当需要进行分组统计的时候)

5、确定结果集排序依据(ORDERBY):

根据排序需要选择对应字段的排序属性。

6、保存设计好的查询。

二、表达式

表达式贯穿了字段属性的有效性规则、筛选、查询规则、窗体报表的计算控件、宏条件书写、VBA语句代码各部分内容,在整个ACCESS学习中非常重要,要求学员必须掌握。

查询通过指定的条件查找满足该条件的数据,该条件称为查询准则。

查询准则是运算符、常量、字段值、函数、对象属性等的任意组合。

想要进行快捷、有效的查询,必须掌握查询准则的书写方法。

(1)表达式的基本符号。

[]:

将窗体、报表、字段或控件的名称用方括号包围

#:

将日期用数字符号包围

“”:

将文本用双引号包围

&:

可以将两个文本连接为一个文本串

运算符:

运算符指出随后出现的是用户定义项

.运算符:

随后出现的是Access定义的项。

知识要点:

1、文本或字符串数据,必须包含在””双引号中间,例如”北京”、”等级考试”。

2、日期数据必须用#括起来,如#2010-3-9#

3、数字数据,直接书写即可,如10

4、连接符&,如“北京”&“奥运”,则运算后等于“北京奥运”

5、引用学生表中的性别字段,[学生].[性别];直接引用性别字段[性别]

(2)准则中的运算符:

运算符举例说明:

1、[年龄]between1and10:

表示1到10之间,包括1和10。

2、[系别]in(“信息”,”数据”,”计算机”):

表示系别在“信息”、”数据”、”计算机”中之一的,in表示要求满足其括号后面所列出内容之一。

3、[姓名]like“刘*”:

表示姓名要与“刘*”匹配,其中*表示0或任意多个字符,所以这里表示姓名是姓刘的。

利用“like+通配符”来匹配文本串的方法,很多地方又称之为“模糊查询”。

通配符

一般使用两个:

*表示0或任意多个任意字符、?

表示一个任意字符。

4、在betweenand、in、like、及比较运算符之前使用not,表示与其基本含义相反。

可翻译为“不”。

5、对于空值NULL,只能用专有的isnull是空值,isnotnull不是空值来比较。

6、and表示链接多个条件,这些条件都满足了,总体才满足。

如age>5andage<10,如果现在age=4,则满足了小于10但没有满足大于5,所以总体条件不满足;如age=6,则即满足小于10又满足大于5,所以总体条件满足。

7、or表示链接的多个条件,只要满足其中一个,总体就满足。

如age>5orage<10,如果现在age=4,则满足了小于10但没有满足大于5,满足了其中之一,所以总体条件满足。

(3)表达式中的函数—数值函数

函数名(参数1,参数2,参数3。

函数

说明

Abs(数值表达式)

返回数值表达式的绝对值

Int(数值表达式)

返回不大于数值表达式的整数,向下取整

Sqr(数值表达式)

返回数值表达式的平方根

Sgn(数值表达式)

返回数值表达式的符号值。

数值表达式>0,返回1;=0,返回0;<0,返回-1

函数符举例说明:

1、abs(-1)=1

2、Int(9.99)=9,Int(-9.59)=-10

3、Sqr(9)=3

4、Sgn(5)=1,Sgn(0)=0,Sgn(-5)=-1

(4)表达式中的函数—字符函数

函数

说明

SPACE(数值表达式)

返回数值表达式的值指定的空格字符串

STRING(数值表达式,字符串表达式)

返回由字符表达式的第一个字符重复组成的指定长度为数值表达式的值的字符串

LEFT(字符串表达式,数值表达式)

返回字符串左边的数值表达式值指定的字符

RIGHT(字符串表达式,数值表达式)

返回字符串右边的数值表达式值指定的字符

LEN(字符串表达式)

返回字符串表达式的字符个数,如字符串为null,返回null

LTRIM(字符串表达式)

去掉字符串表达式左边的空格

RTRIM(字符串表达式)

去掉字符串表达式右边的空格

TRIM(字符串表达式)

去掉字符串表达式两边的空格

MID(字符串表达式,数值表达式1,数值表达式2)

返回字符串表达式从左边算起第数值表达式1开始,截取长度为数值表达式2的字符串.

函数符举例说明:

1、SPACE(4)=””四个空格

2、STRING(4,”abcd”)=”aaaa”

3、LEFT(”abcd”,2)=”ab”、RIGHT(”abcd”,2)=”cd”、MID(”abcd”,2,2)=”bc”

4、LEN(”abcd”)=4、LEN(””)=0、LEN(null)=null

5、LTRIM(“ab”)=“ab”、RTRIM(“ab”)=“ab”、TRIM(“ab”)=“ab”

(5)表达式中的函数—日期时间函数

函数

说明

Date()

返回当前系统日期

Time()

返回当前系统时间

Now()

返回当前系统日期和时间

DAY(date)

返回给定日期是一个月中的哪一天

MONTH(date)

返回给定日期是一年中的哪个月

YEAR(date)

返回给定日期100~9999的值,表示给定日期是哪一年year(date())

WEEKDAY(date)

返回给定日期1~7的值,表示给定日期是一个周中的哪一天

HOUR(date)

返回给定日期0~23的值,表示给定时间是一天中的哪个钟点

DateSerial(year,month,day)

对于指定的年、月、日,返回Date子类型的Variantdateserial(2011,2,17)

函数符举例说明:

1、DAY(#2010-3-9#)=9、MONTH(#2010-3-9#)=3、YEAR(#2010-3-9#)=2010

2、WEEKDAY(#2010-3-9#)=3,注意,星期天为一周的第一天

3、DATE()=#2010-3-9#

4、DateSerial(1990,8,11)

(6)表达式中的函数—统计函数

函数

说明

SUM(表达式)

返回表达式的总和,表达式一般是一字段名

AVG(表达式)

返回表达式的平均值,表达式一般是一字段名

COUNT(表达式)

统计记录个数,表达式一般是一字段名

MAX(表达式)

返回表达式的最大值,表达式一般是一字段名

MIN(表达式)

返回表达式的最小值,表达式一般是一字段名

函数符举例说明:

1、sum([成绩])求总成绩,avg([成绩])求平均成绩,count([学生编号])求学生人数,max([成绩])求最大成绩,min([成绩])求最小成绩

2、count函数对于重复的内容将不统计,所以统计人数,一定要用学生编号,如果用姓名,就可能出现同名的人,而导致统计的人数少了。

(7)表达式综合举例

字段名

准则

说明

职称

“教授”

查询职称为教授的记录

职称

“教授”or“副教授”

查询职称为教授、副教授的教师记录

课程名称

Like“计算机*”

查询课程名称以”计算机”开头的记录

姓名

In(”张三”,”李四”)

查询姓名为”张三”或”李四”的记录

姓名

NotLike“王*”

查询不姓王的记录

姓名

Left([姓名],1)=“王”

查询姓王的记录

姓名

Len([姓名])=2

查询姓名为两个字的记录

学生编号

Mid([学生编号],3,2)=”03”

查询学生编号第3和第4个字符为03的记录

工作时间

Between#99-01-01#And#99-12-31#

查询99年参加工作的记录

工作时间

查询15天前参加工作的记录

出生日期

Year([出生日期])=1980

查询1980年出生的记录

姓名

Isnull

查询姓名为空的记录

姓名

Isnotnull

查询姓名不会空的记录

姓名

“”

查询姓名为空字符串的记录

三、SQL语句简介

数据库查询是数据库的核心操作。

SQL语言提供了SELECT语句进行数据库的查询,该语句具有灵活的使用方式和丰富的功能。

我们要掌握基本语法和关键字。

(1)SQL关键字

知识要点:

1、SELECT关键字主要用于数据的查询,即从数据中选择满足条件的数据,同时进行统计、计算。

2、CREATE表示建立、DROP表示删除、ALTER表示修改,他们主要针对表的结构。

3、INSERT表示插入记录、UPDATE表示修改记录、DELETE表示删除记录。

4、GRANT表示授权、REVOTE表示收回授权。

(2)数据定义、操作、控制相关SQL语句语法和示例:

1、Insert记录插入语句基本语法

INSERTINTO<表名>[属性列表]VALUES(对应属性列表的值列表)

例如:

INSERTINTO课程(课程编号,课程名称)VALUES('101','计算机基础')

2、UpDate数据修改(更新)语句基本语法

UPDATE<表名>SET<列名>=<表达式>[,<列名>=<表达式>]…

[WHERE<条件>]

例如:

UPDATE学生SET年龄=年龄+1where姓名=’张三’

3、Delete数据删除语句基本语法

DELETEFROM<表名>[WHERE<条件>]

例如:

DELETEFROM学生WHERE年龄<17

4、其他操作定义SQL语句(了解即可)

CREATETABLE课程(课程编号char(4),课程名称char(20),开课时段date)

CREATEINDEXdexON课程(课程编号)‘在课程表的课程编号字段上建立一个索引dex

CREATEVIEW学生ASSELECT*FROM学生‘创建一个视图,名称为学生

DROPTABLE学生‘删除“学生”表

DROPINDEXdex,‘删除索引dex

DROPVIEW学生‘删除视图“学生”。

ALTERTABLE雇员ADD职务CHAR(10)

ALTERTABLE雇员DROP备注

ALTERTABLE雇员ALTER雇员号CHAR(8)

(3)SELECT的基本语法

SELECT[ALL/DISTINCT/*]

<目标列表表达式>[,<目标列表达式>]…

FROM<表名或视图名>[,<表名或视图名>]…

[WHERE<条件表达式>]

[GROUPBY<列名1>[HAING<条件表达式>]]

[ORDERBY<列名2>{ASC/DESC}]

Selectdistinct姓名,团员否from学生where年龄<18orderby姓名desc

其中<>表示在实际的语句中要采用所需内容进行代替,[]表示可以根据需要进行选择,也可以不选,{}表示必选项。

SELECT说明:

1、显示记录中指定的字段(select后字段列表,可以用*号表示表的所有字段),对选择出的记录,是否要消除重复记录(DISTINCT)。

2、从(From)哪些数据源或表(表名跟在from后面)中

3、选择出满足一定条件(where后语句)的记录。

4、显示的数据是否要排序,按哪些字段如何排序(orderby完成。

ASC升序,DESC降序,默认为ASC)。

5、在选择数据时是否要分组,按什么字段分组(groupby)。

(4)SELECT语句示例:

1、SELECT*FROM学生;

2、SELECT姓名,系别,年纪AS年龄FROM学生WHERE年纪BETWEEN20AND23

3、SELECT姓名,性别FROM学生WHERE系别IN(‘信息’,’数学’,‘计算机’)

4、SELECT姓名,学生编号,性别FROM学生WHERE姓名LIKE‘刘*’

5、SELECT姓名FROM学生WHERE系别=’信息’OR系别=‘数学’OR系别=’计算机’

6、SELECT*FROM学生ORDERBY系别,年龄DESC

四、各类查询要点分析。

(必须掌握)

(1)选择查询

1、字段中"*"号表示表中的所有字段。

2、字段重命名:

新字段名称:

原字段名,利用字段重命名可以把字段名改变为其它名称。

如,学生姓名:

姓名。

表示将“姓名”更改为“学生姓名”。

3、选择查询可以实现记录分组,计算总和、计数、统计等等。

(2)总计查询。

1、在实际应用中,用户可能不仅要统计某个字段中的所有值,而且还需要把记录分组,对每个组的值进行统计。

例如将所有同学按性别“男”和“女”分组,分别统计男同学人数和女同学人数。

2、总计查询需要设定三种字段:

分组字段(一个总计查询中可以设置多个)、计算字段(一个总计查询中只可以设置一个)、条件字段(总计查询中,字段选中“条件”选项,表明该字段的引入只是为了对分组进行某种限制,该字段不能显示在结果中)。

3、对于计算字段,如果选择“计数”选项,则必须选择无重复值、没有null值的字段来进行,否则会使计数个数减少。

如上面求“男同学”和“女同学”各有多少人,需要对“学生编号”字段进行“计数”,“学生编号”是不可能重复的。

4、总计查询字段选项参考

选定

含义

总计

字段值的总和。

平均值

字段的平均值。

最大值

字段的最小值。

最小值

字段的最大值。

计数

字段值的数量,不包括Null(空)值。

标准差

字段的标准偏差值。

方差

字段的方差值。

第一条记录

该分组中当前字段的第一条记录的值

最后一条记录

该分组中当前字段的最后一条记录的值

分组

定义要执行计算的组。

例如,如果要按类别显示销售额总计,请对“类别名称”字段选定GroupBy。

表达式

创建表达式中包含合计函数的计算字段。

通常在表达式中使用多个函数时,将创建计算字段。

条件

指定不用于分组的字段准则。

设置了该参数的字段,将不能在结果中显示

(3)交叉表查询。

1、交叉表查询是ACCESS特有的一种查询,以表的形式显示出摘要数据,便于分析比较。

交叉查询将查询字段分为两组,一组显示在表左侧(称为行标题),一组显示在表的顶部(称为列标题),在行与列交叉的地方显示对相关数据进行总和、平均、计数等统计计算结果。

2、交叉表行需指定三种字段

行标题:

显示在查询结果最左侧的字段名,行标题字段可以设置多个字段。

列标题:

显示在每列标题上的字段名,列标题只能设置一个字段。

值:

在行、列交叉位置上统计的值,可以利用各种数据函数计算的结果。

(4)参数查询。

1、参数查询(动态查询)利用对话框,提示用户输入参数,并检索符合输入参数的记录或值。

在一个查询中可设置一个或多个参数。

2、设计要点:

在准则行中,在[]内添加提示语即可。

例如:

要求输入起始时间,可在设计网格任何位置中输入[请输入起始时间:

]。

3、为什么将提示语放在[]中,就会出现参数输入提示呢?

在表达式学习中我们知道,包含在[]中的一般是用户在ACCESS数据库中定义的对象名,例如:

表、窗体、报表、表的字段、控件名等等。

系统会在当前数据库中查找[]中的对象,并读取。

但是如果当前数据库中没有定义[]内部出现的对象名(例如我们这里临时添加的提示语言),系统先查找该对象,在没有的情况下,便弹出参数输入窗口,要求用户输入参数。

所以,在ACCESS的设计过程中,可以在任何对象中出现参数输入要求,只要把事先未定义的字符串放在[]中即可。

(5)操作查询。

1、在对数据库进行维护时,常常需要对大量的数据进行修改。

操作查询满足了这一要求,能够一次完成批量修改的工作。

2、操作查询分类:

(1)生成表查询:

可从一个或多个表中提出所需数据,并生成一个指定名称的新表。

(2)删除查询:

一次删除一批满足一定筛选条件的记录。

(3)追加查询:

将符合一定条件的记录添加到另一个现有的表中。

(4)更新查询:

将一批满足条件的记录进行更新(或修改)。

3、操作查询注意要点。

(1)执行操作查询:

要想执行特定的数据操作,不能只通过“数据表视图”来完成,必须点击工具栏上方的运行查询按钮。

(2)操作查询结果:

操作查询对于表的修改是不能用“撤消”来恢复的,所以在进行操作时,注意对表进行备份。

(3)查看操作查询的结果:

不能通过“数据表视图”来查看,而只能查看相关操作的数据表中的数据才能看到结果。

(6)SQL查询。

1、ACCESS可以直接使用SQL结构化查询语句来建立复杂而功能强大的查询。

我们知道,事实上利用“设计”视图创建的查询都是基于SQL的。

SQL查询在查询的SQL视图中设计。

2、SQL查询分类:

(1)联合查询(union):

两个或多个含有相同信息的独立查询联合为一个信息表。

如:

SELECT<字段列表1>FROM数据源1

union

SELECT<字段列表2>FROM数据源2

(2)子查询:

在查询语句select的规则中的还包含其它select查询语句,把包含在其它查询中的select查询称之为子查询。

SELECT姓名FROM学生WHERE学生编号IN(SELECT学生编号FROM选课成绩WHERE课程编号="01")

(3)数据定义查询:

创建、更改、删除表或索引。

基本上都可由操作查询来完成。

(4)传递查询:

将SQL语句直接发送给ODBC数据库服务器,从而对其数据库进行操作。

即查询不在本数据中执行,而是传递给另一个数据库来执行。

使用传递查询时,不必与服务器上的表链接,就可以直接使用应用的表。

应用传递查询的主要目的是为了减少网络负荷。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1