内容正文:
项目8 查询的创建与应用3知识梳理
知识点六 创建操作查询
操作查询可以用于复制或更改表中的数据。
1.生成表查询
生成表查询是利用一个或多个表中的全部或部分数据建立新表。在Access中,从表中访问数据要比从查询中访问数据快得多,因此,如果经常要从几个表中提取数据,则最好的方法是使用生成表查询,将从多个表中提取的数据组合起来生成一个新表。
2.追加查询
维护数据库时,如果要将某个表中符合一定条件的记录添加到另一个表中,则可以使用追加查询。追加查询能够将一个或多个表中的数据追加到另一个表的尾部。
3.删除查询
随着时间的推移,表中数据会越来越多,其中有些数据有用,有些数据已无任何用途应将无用数据及时从表中删除。删除查询能够从一个或多个表中删除记录。如果删除的记录来自多个表,则必须满足以下几点。
(1)在“关系”窗口中定义相关表之间的关系。
(2)在“编辑关系”对话框中选中“实施参照完整性”复选框。
(3)在“编辑关系”对话框中选中“级联删除相关记录”复选框。
4.更新查询
如果需要对表中的一组记录进行更新和修改,当更新的记录较多,或需要符合一定条件时,就比较麻烦,而且容易造成疏漏。使用更新查询可以对一个或多个表中的一组记录进行更新。
操作查询除了从表中选择数据,还对表中的数据进行修改,而这种修改是不能撤销的为了保证数据安全,在进行操作查询前应先对相关的数据库或表进行备份。
知识点七 创建SQL查询
SQL查询是使用SQL语句创建的结构化查询。SQL查询不能直接通过查询设计以图形化的方式创建,只能以命令的方式创建。SQL查询包含联合查询、传递查询、数据定义查询和子查询。
1.SQL 及 SELECT 语句基本格式
(1)SQL
结构化查询语言(Structured Query Language,SQL)是数据库领域内通用的关系数据库的处理规范,它独立于平台,具有较好的开放性、可移植性和扩展性。
SQL非常简洁,其语法简单但功能强大,使用为数不多的几条命令就可以实现比较强大的功能。
(2)SELECT语句基本语法格式
SELECT 语句是用于查询、统计的最为广泛的一种SOL语句,它不但可以建立简单査询,还可以实现条件查询、分组统计、多表查询等功能。
SELECT语句的动词是SELECT。SELECT语句的基本格式由SELECT-FROM-WHERE 查询块组成,多个查询块可以嵌套使用。
SELECT语句基本的语法格式如下。
SELECT [表名 .]字段名称列表[AS<列标题 >]
[INTO 新表名]
FROM <表名或査询名 >[,<表名或査询名 >]…
[WHERE <条件表达式>]
[GROUP BY 分组字段列表[HAVING 分组条件]]
[ORDER BY<列名>[ASC|DESC]]
其中,方括号中的内容是可选的,尖括号中的内容是必需的。
SELECT 语句中各子句的意义如下。
①SELECT子句:用于指定要查询的字段,只有指定的字段才能在查询中出现。如果希望检索到表中的所有字段信息,那么可以使用星号“*”来代替列出的所有字段的名称而列出的字段顺序与表定义的字段顺序相同。
②INTO 子句:用于指定使用查询结果来创建新表。
③FROM 子句:用于指定要查询的字段来自哪些表、查询或链接表。
④WHERE子句:用于给出查询条件,只有与这些查询条件匹配的记录才能出现在香询结果中。在 WHERE后可以加条件表达式,还可以使用IN、BETWEEN、LIKE表示字段的取值范围。其作用分别如下。
a.IN在 WHERE 子句中的作用是,确定 WHERE后的条件表达式的值是否等于指定列表中的几个值中的任何一个。例如,“WHERE 学历 IN("本科","专科")”,表示“'学历字段的值如果是'本科’或'专科’,则满足查询条件”。
b.BETWEEN在WHERE 子句中的作用是,可以用条件表达式“BETWEEN…AND…表示在二者之间,“NOT BETWEEN…AND…”表示不在二者之间。例如,“WHERE 商品单价 BETWEEN 2000 AND S000”,表示“'商品单价’字段的值如果在 2000和5000之间,则满足查询条件”。
c.LIKE 在 WHERE 子句中的作用是,利用“*”“?”等通配符实现模糊査询。
其中,“*”匹配任意数量的字符,例如,“姓名 LIKE"张*"”,表示“所有以'张’开头的姓名都满足查询条件”;
“?”匹配任意单个字符,例如,“姓名 LIKE"张?"”,表示“以‘张’开头的、两个字的姓名满足查询条件”。
⑤GROUPBY子句:用于指定在执行查询时,对记录的分组字段。
⑥HAVING子句:用于指定查询结果的附加筛选条件。该子句从筛选结果中对记录进行筛选,通常与 GROUP BY 子句一起使用。
⑦ORDER BY子句:用于按“列名”对查询结果进行排序。ASC表示升序,DESC表示降序,默认为升序排序。
工 程 师 提 示
(1)SELECT语句不区分大小写,如:SELECT 可为 select,FROM 可为 from。
(2)SELECT语句中所有的标点符号(包括空格)必须采用半角西文符号,如果采用了中文符号,则会打开要求重新输入或提示出错的对话框,必须将其改为半角西文符号,才能正确地执行 SELECT语句。
2.创建数据定义查询
数据定义查询与其他查询不同,利用它可以创建、删除或更改表,也可以在数据库表中创建索引。在数据定义查询中要输入SQL语句,每个数据定义查询只能由一个数据定义语句组成。Access 支持的数据定义语句如表 3-7 所示。
使用 CREATE TABLE 语句创建数据表时需要注明各字段的数据类型,SQL 语句中的基本数据类型如表 3-8所示。
3.创建子查询
子查询是指嵌套于其他 SQL语句中的查询,一个查询语句最多可以嵌套 32 层子查询。子查询也称内部查询,而包含子查询的语句也称外部查询。通常,子查询可以作为外部查询WHERE 子句的一部分,用于替代 WHERE 子句中的条件表达式。
学科网(北京)股份有限公司
$$null