Access 2003完整教程:关于查询中的表达式 (ADP)

注释本主题中的信息仅适用于 Microsoft Access 项目 (.adp)。

表达式概述

在查询中任何用到列名的地方都可以使用表达式。表达式可用以计算显示值、作为搜索条件的一部分、或合并数据列的内容。一个表达式可以由数值计算或字符串组成,也可以包含列名、文字、运算符及函数的任何组合。

在查询中使用表达式的一些示例包括:

表达式结构与表达式示例

表达式的一般创建准则

表达式可以包含列名、原义字符、运算符或函数的任意组合。在将这些元素组合成表达式时应遵循下列准则:

表达式示例

下表列出在查询中使用表达式的示例。

表达式结果
SELECT (price * .9)
FROM products
显示打折价格(价格列下调 10% 后的结果)。
SELECT (lname + ', ' + fname)
FROM employee
显示用逗号把姓与名列相连接后的结果。
SELECT sales.qty, titles.price

FROM sales INNER JOIN titles ON
sales.title_id = titles.title_id
ORDER BY
(sales.qty * titles.price)

联接两个表之后,按订单的总值(数量乘以价格)对结果集进行排序。
SELECT au_lname, au_fname
FROM authors
WHERE
(SUBSTRING(phone, 1, 3) = '415')
显示区域代码为 San Francisco 地区的作者。
SELECT ord_num, ord_date
FROM sales
WHERE
(ord_date >=
DATEADD(day, -10, GETDATE()))
sales表中查找在近 10 天内制作的表。当天的日期由 GETDATE(?) 函数返回。

用于表达式的运算符

可以使用多种运算符来构造查询的表达式,包括数学和文本运算符。

数学运算符

下表列出了可用于构造表达式的数学运算符。

运算符含义
+、-单运算符正、负号
+加法
-减法
*乘法
/除法

注释可以使用其他可用的运算符,如“%”运算符来确定算术运算中的模数或余数。有关模数算术运算符的详细信息,请参阅 Microsoft SQL Server 文档。

如果在一个表达式中有多个数学运算符,则“查询设计器”按照如下所示的运算符优先级处理表达式。若要改写默认的优先级,可在要优先计算的表达式前后加上括号。如果表达式中有多个相同优先级的运算符,则按照从左向右的次序计算运算符。

  1. 单运算符 + 号和 - 号
  2. * 和 /
  3. + 和 -

文本运算符

可对文本执行下列操作之一:连接或链接字符串。可以使用单个运算符连接字符串并执行其他运算(如删除多余的空格)。若要连接字符串,可以在“网格”窗格中使用“+”运算符。

表达式的预定义变量

在表达式中,除了使用列名、文字、运算符和函数外,还可使用定义过含义或值的预定义变量。例如,可用预定义变量显示当前用户的用户名,还可用于搜索包含空值 (Null) 的数据列。

下面的列表包含预定义变量的示例。

预定义变量说明示例
CURRENT_USER当前用户的用户名

安全性使用此功能时要格外小心。其他用户可能看到敏感信息或机密信息。

UPDATE accounts
SET salesperson = CURRENT_USER
WHERE region = 'NW'

更改在当前用户名称的西北地区的所有帐户的salesperson列。

NULL空值 (Null),用于搜索表达式
IS NULL 和
IS NOT NULL
SELECT emp_id, lname, fname, minit
FROM employee
WHERE minit IS NULL

查找名称中没有中间名首字母的作者。

注释关键字 IS 是与 Null 一起使用的特殊运算符。

上页:Access 2003完整教程:关于“数据库设计器” (ADP) 下页:Access 2003完整教程:“添加表”对话框(数据库设计器)

Access 2003完整教程:关于查询中的表达式 (ADP)

Access 2003完整教程:“添加表”对话框(数据库设计器)Access 2003完整教程:“选择名称”对话框
Access 2003完整教程:“创建关系”对话框Access 2003完整教程:“列选择”对话框
Access 2003完整教程:“检测到数据库更改”对话框(数据库设计器)Access 2003完整教程:“需要更改数据类型”对话框
Access 2003完整教程:“删除表”对话框Access 2003完整教程:关于“图表”窗格
Access 2003完整教程:有关“网格”窗格Access 2003完整教程:“索引/键”属性页
Access 2003完整教程:“选择插入结果的目标表”对话框Access 2003完整教程:“选择插入值的目标表”对话框
Access 2003完整教程:联接线属性页Access 2003完整教程:“生成表”对话框
Access 2003完整教程:“页面设置”对话框Access 2003完整教程:“查询定义不同”对话框
Access 2003完整教程:查询属性页Access 2003完整教程:视图属性页
Access 2003完整教程:关系属性页Access 2003完整教程:“保存”对话框
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号