access--SQL语言妙用
时 间:2008-05-31 08:20:35
作 者:UMVSoft整理 ID:1445 城市:上海
摘 要:
正 文:
在使用过程中,我们经常会使用到一些查询,但这些查询用各种查询向导和设计器都无法做出来,不知道你还记不记得,在查询那一课中我们讲过SQL查询,用这种查询就可以完成比较复杂的查询工作。当时你还刚刚开始使用ACCESS,用设计视图和向导就可以建立很多有用的查询,这些足够你掌握一段时间了,而且它的功能已经基本上能满足我们的需要。而SQL语言作为一种通用的数据库操作语言,并不是ACCESS用户必须要掌握的,但在实际的工作中有时必须用到这种语言才能完成一些特殊的工作。
单纯的SQL语言所包含的语句并不多,但在使用的过程中需要大量输入各种表、查询和字段的名字。这样当你建立一个涉及大量字段的查询时,就需要输入大量文字,与用查询设计视图建立查询相比,就麻烦多了。所以我在建立查询的时候也都是先在查询设计视图将基本的查询功能都实现了,最后再切换到SQL视图通过编写SQL语句完成一些特殊的查询。下面我们就介绍一些在ACCESS使用中常常会用到的一些SQL语言。
我们说过在建立查询的时候可以切换到SQL视图去,下面来看看是怎么切换的:
当你打开一个查询以后,单击“新建方法”列表的时候并没有一个“使用SQL视图创建查询”的选项,
这也表明ACCESS并不提倡在工作中使用SQL语言,那我们就单击“在设计视图中创建查询”这一项,之后将会在屏幕上出现一个设计视图,
现在我们要切换到SQL视图,只要将鼠标移动到工具栏最左面的“视图”选项按钮右边的向下按钮上,单击鼠标左键,在弹出的下拉菜单中选中“SQL 设计视图”项就可以将视图切换到SQL状态。
基本的SQL语句
在SQL语言中用得最多的就是Select语句了。我们就先讲讲Select语句吧。 Select语句构成了SQL数据库语言的核心,它的语法包括5个主要子句,分别是FORM、Where、GROUP BY、HAVING、ORDER BY子句。
Select语句的结构是这样的。 Select 〈字段列表〉 FROM 〈表列表〉 [ Where〈行选择说明〉][GROUP BY 〈分组说明〉][ HAVING 〈组选择说明〉] [ORDER BY 〈排序说明〉];
实际上,当我们要将表1的字段1和字段3用来建立一个查询的话,只需要书写下面这样一条语句就可以了。 Select 表1.字段1,表1.字段3(表的名字、字段名最好和具体的例子结合起来,下同) FROM 表1;
我们可以这样理解这句话,从表1中选择出字段1和字段3,选中的每个字段都用逗号隔开,并且每个字段前面都列的有表或查询的名字,并用“.”联起来。而FROM后面则需要有包含这些字段的所有表的名称,各个名称之间要用逗号联接起来。
现在我们可以单击“工具”菜单上的“执行”按钮,
现在我们看到了这个查询的结果,和直接用查询视图设计的查询产生了相同的效果。其实ACCESS中所有的数据库操作都是由SQL语言构成的,微软公司只是在其上增加了更加方便的操作向导和可视化设计罢了。
当我们直接用设计视图建立一个同样的查询以后,将视图切换到SQL视图,你会惊奇的发现,在这个视图中的SQL编辑器中有同样的语句。看来是ACCESS自动生成的语句。 原来ACCESS也是先生成SQL语句,然后用这些语句再去操作数据库。
现在我们再讲讲Select语句中后几种子句的用途吧。你发现这些子句都被方括号适起来了,这是表明这些子句在Select语句中都是可选项目,其中Where 子句是一个行选择说明子句,用这个语句可以对我们所选的行,就是表中的记录进行限制,当Where 后面的行选择说明为真的时候才将这些行作为查询的行,而且在Where中还可以有多种约束条件,这些条件可以通过“AND”这样的逻辑运算符联接起来。
Access软件网官方交流QQ群 (群号:54525238)
Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- Access对子窗体数据进行批...(10.30)
- 最精简的组合框行来源数据快速输...(10.25)
- Access仿平台的多值选择器...(10.24)
- 【Access日期区间段查询】...(10.22)
- 【Access源码示例】VBA...(10.12)
- Access累乘示例,Acce...(10.09)
- 数值8.88,把整数8去掉,转...(10.08)
- 【Access自定义函数】一个...(09.30)
- 【Access选项卡示例】Ac...(09.09)
学习心得
最新文章
- Access系统自带的日期选择器不...(11.08)
- 分享一下Access工程中的acw...(11.07)
- Access快速开发平台--让有权...(11.04)
- Access快速开发平台--审批选...(11.01)
- ACCESS两张表先各自排序,然后...(10.31)
- Access对子窗体数据进行批量+...(10.30)
- SqlServer中如何用SQL命...(10.29)
- Access报表中的分组功能用代码...(10.28)
- 用Access计算库存结余的一个方...(10.26)
- 最精简的组合框行来源数据快速输入(...(10.25)