Access 2003完整教程:WHERE 子句

指定 FROM 子句所列出的表中哪些记录会受 SELECT、UPDATE或 DELETE 语句的影响。

语法

SELECT fieldlist
FROM tableexpression
WHERE criteria

包含 WHERE 子句的 SELECT 语句具有以下部分:

部分说明
fieldlist任何要检索的字段的名称,以及任何字段名别名、SQL 聚合函数、选择谓词(ALL、DISTINCT、DISTINCTROW 或 TOP)或其他 SELECT 语句选项。
tableexpression将从中检索数据的表的名称。
criteria表达式,记录必须满足该表达式才能包括在查询结果中。

说明

Microsoft Jet 数据库引擎会选择出符合 WHERE 子句所列条件的记录。如果没有指定 WHERE 子句,查询会返回表中的所有行。如果在查询中指定了多个表并且不包含 WHERE 子句或 JOIN 子句,查询将会产生各个表的迪卡尔积

WHERE 是可选的,但包含它时,则应在 FROM 后面。例如,可以选择销售部门中的所有雇员(WHERE Dept = 'Sales')或年龄在 18 岁到 30 岁之间的顾客(WHERE Age Between 18 And 30)。

如果没有使用 JOIN 子句来对多个表执行 SQL 联接操作,那么所返回的Recordset对象将是不可更新的。

WHERE 和 HAVING 相似。WHERE 确定要选择哪些记录。同样,一旦记录通过 GROUP BY 进行了分组,那么 HAVING 就确定将要显示哪些记录。

通过 WHERE 子句,可以删除不希望由 GROUP BY 子句分组的记录。

可以使用多种表达式来确定 SQL 语句要返回哪些记录。例如,下面的 SQL 语句选择出薪金多于 $21,000 的所有雇员:

SELECT LastName, Salary

FROM Employees

WHERE Salary > 21000;

WHERE 子句能够包含最多 40 个由逻辑运算符(如AndOr)联接的表达式。

输入包含空格或符号的字段名时,请使用中括号 ([ ]) 把这个名称括起来。例如,一个顾客信息表可能包含了特定顾客的信息:

SELECT [Customer’s Favorite Restarant]

指定了 criteria 参数时,数据文字必须是美国格式,即使没有使用 Microsoft? Jet 数据库引擎的美国版本。例如,对于 May 10,1996,在英国它记为 10/5/96,而在美国它记为 5/10/96。请确保将数据文字放在数字符号 (#) 以内,如下例所示。

若要在英国数据库中查找出日期为 May 10,1996 的记录,必须使用如下所式的 SQL 语句:

SELECT *

FROM Orders

WHERE ShippedDate = #5/10/96#;

也可以使用DateValue函数,该函数可以感知由 Microsoft Windows 建立的国际设置。例如,用于美国数据库的代码是:

SELECT *

FROM Orders

WHERE ShippedDate = DateValue('5/10/96');

用于英国数据库的代码是:

SELECT *

FROM Orders

WHERE ShippedDate = DateValue('10/5/96');

注释如果条件字符串所引用的列为GUID类型,那么该条件表达式使用的语法稍微有所不同:

WHERE ReplicaID = {GUID {12345678-90AB-CDEF-1234-567890ABCDEF}}

请确保包含如上所示的嵌套大括号和连字号。

请参阅
ALL、DISTINCT、DISTINCTROW 或 TOP 谓词 LEFT JOIN、RIGHT JOIN 操作
DELETE 语句 ORDER BY 子句
FROM 语句 SELECT 语句
GROUP BY SELECT...INTO 语句
HAVING 子句 SQL 聚合函数
IN 子句 UPDATE 语句
INNER JOIN 操作

上页:Access 2003完整教程:Var、VarP 函数 下页:Access 2003完整教程:WITH OWNERACCESS OPTION 声明

Access 2003完整教程:WHERE 子句

Access 2003完整教程:WITH OWNERACCESS OPTION 声明Access 2003完整教程:Jet 4.0 数据定义语言的新增功能
Access 2003完整教程:Jet 4.0 数据处理语言的新增功能Access 2003完整教程:Microsoft Jet 4.0 中的新增功能
Access 2003完整教程:Jet 4.0 Windows 注册表设置的新增功能Access 2003完整教程:删除索引
Access 2003完整教程:删除或取消筛选Access 2003完整教程:删除查询中的联接
Access 2003完整教程:删除关系Access 2003完整教程:删除排序
Access 2003完整教程:带 Service Pack 2 (SP2) 的 Internet Explorer 5.01 与 5.5 或更高版本在页支持方面的区别Access 2003完整教程:重复选项值
Access 2003完整教程:重复的键盘快捷方式Access 2003完整教程:合并搜索条件的规则和网格窗格约定 (ADP)
Access 2003完整教程:关于列和列属性 (ADP)Access 2003完整教程:比较运算符 (ADP)
Access 2003完整教程:关于约束 (ADP)Access 2003完整教程:表达式的结构 (ADP)
Access 2003完整教程:关于 SQL Server 数据库的“数据库设计器”注意事项 (ADP)Access 2003完整教程:输入搜索值的规则 (ADP)
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号