在ADO使用SELECT语法一

2008-02-23 05:05:04来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

SELECT表达式

接着,让我们看看SELECT表达式,SELECT用来在表中寻找符合特定条件的记录,语法如下:

SELECT [关键字] { * | 表名称.* | [表名称.]字段名称1 [AS 别名1] [, [表名称.] 字段名称2 [AS 别名2] [, ...]]}
FROM 表运算式 [, ...] [IN 外部表]
[WHERE... ]
[GROUP BY... ]
[HAVING... ]
[ORDER BY... ]
[WITH OWNERACCESS OPTION]

关键字:能够用来限制返回之记录的数量,能够设定为ALL、DISTINCT、DISTINCTROW 、或TOP。假如没有指定述语,缺省值为 ALL。

*:选取全部的字段。

别名:代替在表中原有的字段名称。

表运算式:一个或多个以逗号分隔的表名称。

外部表:假如表不存在现在的表当中,须设定包含表运算式中表的表名称。

执行SELECT 表达式,并不会改变表之中现有的资料。

一个 SELECT 表达式的最基本语法是:

SELECT * FROM 表运算式

您能够使用星号(*)来选取表的全部字段。譬如下例选取 [产品] 表中的全部字段:

SELECT * FROM 产品

字段名称包含空格或标点符号时,须使用括号[ ]将他括在其中。例如:

SELECT [电脑 的产品]

假如在FROM子句中的字段名称中,包含多个的表中时,需在字段名称前加上表名称和点(.)运算子,即 表名称.字段名称。譬如下例选取 [产品] 表的 [价格] 字段和 [订单] 表的 [数量] 字段:

SELECT 产品.价格, 订单.数量

FROM 产品, 订单

WHERE 产品.代号 = 订单.代号

当您使用Recordset 对象时,Recordset并不认得rs(表名称.字段名称) 格式,即rs(“产品.价格”)会发生错误,您必须使用AS来设定字段名称的别名。譬如:

SELECT 产品.价格 AS 价格, 订单.数量AS 数量

FROM 产品, 订单

WHERE 产品.代号 = 订单.代号

如此就能够使用rs(“价格”) 和rs(“数量”),来读取其字段的资料。

和SELECT表达式相关的语法:


关键字:ALL/ DISTINCT/ DISTINCTROW/ TOP。

WHERE:寻找FROM中的表符合特定条件的资料记录。WHERE 能够使用下面的BETWEEN、LIKE、IN运算子:

Between...And:判断表达式的值是否落在指定的范围之中。

Like:寻找相符合的关键字。

IN运算式:限定范围。

NOT IN运算式:表示不属于所指定的范围。

ORDER BY子句:能够设定排序的字段。

GROUP BY子句:将查询的结果做统计。

HAVING子句:使用在SELECT 表达式中,筛选已GROUP BY统计的记录。

Union:能够合并多组查询的结果。

JOIN:连接组合两个表中的字段记录。

子查询(sub query):表达式中,能够包括SELECT表达式。

Select...Into:将查询的结果,建立一个产生的表。


周详介绍如下:

ALL/DISTINCT/DISTINCTROW/TOP关键字

使用SELECT查询时,能够加上关键字,以选取所查询的记录。如下:


ALL:返回任何的记录。

DISTINCT:指定字段中的记录有重复时只返回一条记录,记录不重复。

DISTINCTROW:指定字段中的记录有重复时都不返回。

TOP:返回前面几个记录或几个百分比的记录。


语法如下:

SELECT [ALL | DISTINCT | DISTINCTROW | [TOP n [PERCENT]]]
FROM 表

ALL返回任何的记录。不加关键字时,和加ALL的意义相同,将返回任何的记录。譬如下列两个例子的执行结果相同,都从产品表中返回任何的记录:

SELECT ALL * FROM 产品

和以下的执行结果相同:

SELECT * FROM 产品

DISTINCT不选取指定字段之中的重复资料。使用DISTINCT后,查询的结果,列在SELECT DISTINCT后的每个字段的资料值,若相同则只取一条记录,换句话说,指定字段的资料不会有重复的现象。例如,在产品表之中有一些产品名称相同的产品,加上DISTINCT的SQL表达式只会返回一条记录字段为产品名称资料相同的记录:

SELECT DISTINCT 产品名称 FROM 产品

假如您不加上DISTINCT,上例查询将返回数个包含相同产品名称的记录。

假如SELECT DISTINCT子句后指定数个字段,查询的结果,任何字段的组合值不会有重复的现象。

DISTINCTROW则不返回指定字段任何重复的记录。



[1] [2] 下一页

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: ASP中FSO的神奇功能 - 简介

下一篇: VB两种操作Access数据库方法的比较

热门词条
热门标签