Access 2003完整教程:处理表达式的 SQL 标量函数 (ADP)

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

标量函数的概述

建立表达式时,可以调用多种标量函数,包括:

“查询设计器”通过以下方式可以帮助您使用函数:

下面的信息是常用标量函数的列表。有关 SQL Server 标量函数的完整列表,请参阅 Microsoft SQL Server 文档中的“处理 SQL 参考函数”帮助主题

注释也可以使用一组特殊的函数,即聚合函数(如 SUM(?) 和 AVG(?))来创建汇总数据的查询。

字符串函数

函数说明示例
LCASE( ),
LOWER( )
将字符串转换为小写
SELECT UPPER(substring(lname, 1, 1)) +
LOWER(substring (lname, 2, 99))
FROM employee

显示已将首字符转换为大写而其余字符转换为小写之后的姓氏。

LTRIM(?)从字符串中删除前导空格
SELECT stor_name,LTRIM(stor_address)
FROM stores

显示从前面删除多余空格后的地址列。

SUBSTRING(?)从字符串中提取一个或多个字符
SELECTSUBSTRING(phone,1,3)
FROM employee

显示电话号码的前三个字符(区号)。

UCASE(?)、
UPPER(?)
将字符串转换为大写
SELECT * FROM employee
WHEREUPPER(lname)= 'SMITH'

在将列内容与特定值进行比较前,将lname列内容转换为大写(避免在搜索条件要区分大小写的情况下不匹配)。

日期函数

函数说明示例
DATEDIFF(?)计算两个日期间的间隔。
SELECT fname, lname, hire_date
FROM employee
WHEREDATEDIFF(year, hire_date, getdate())> 5

查找被雇佣五年以上的所有雇员。

DATEPART(?)返回日期时间列的指定部分,包括日、月、年。
SELECTDATEPART(year, hire_date)
FROM employee

只显示雇员被雇佣的年份(不是完整的日期)。

CURDATE(?)、
GETDATE(?)
DATE(?)
返回日期时间格式的当前日期。当对许多其他日期函数进行输入时,该函数很有用,例如计算从今天起向前或向后的间隔。
SELECT order_id
FROM orders
WHERE order_date =GETDATE()
Displays orders placed today.

数学函数

注释还可以使用聚合函数:AVG(?)、COUNT(?)、MAX(?)、MIN(?)、和 SUM(?)在报表中创建平均值和总计值。

函数说明示例
ROUND(?)根据指定的小数的位数对数字进行四舍五入
SELECTROUND(qty * (price * discount), 2)
FROM sales

显示基于某一折扣的总价,然后将结果四舍五入为两位小数。

FLOOR(?)将数字向下取最近(最小)的整数。
UPDATE titles
SET price =FLOOR(price)

titles表中的所有价格向下取最近的整数。

CEILING(?)将数字向上取最近的整数。
INSERT INTO archivetitle
SELECT title,CEILING(price)
FROM titles

titleprice(向上取最近的整数)值从titles表复制到archivetitle表。

系统函数

函数说明示例
DATALENGTH(?)返回指定表达式使用的字节数。
SELECTDATALENGTH(au_lname + ', '
 + au_fname)
FROM authors

列出姓氏和名字组合所需的字节数。

USER(?)、
USER_NAME(?)
返回当前用户名。

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

SELECT company_name, city, phone
FROM customers
WHERE salesperson =USER_NAME()

为运行查询的销售人员创建客户列表。

其他函数

函数说明示例
CONVERT(?)从一种数据类型转换为另一种数据类型。对数据设置格式或用数据列的内容作为需要不同的数据类型的函数的参数时,该函数很有用。
SELECT 'Hired: ' +CONVERT(char (11), hire_date)
FROM employee

显示日期及其前面的标题;CONVERT(?) 函数创建一个字符串值而不是日期值,这样该字符串才可以和原义字符串相连。

SOUNDEX(?)返回特定表达式的 SOUNDEX 代码,使用这样的表达式可以创建“读音相似”的搜索。
SELECT au_lname, au_fname
FROM authors
WHERESOUNDEX(au_fname)= 'M240'

搜索与“Michael”读音相似的名称。

STR(?)将数值数据转换为字符串以便能与文本运算符一同处理。
SELECT str(job_id) + ' ' +
 str(job_lvl)
FROM employee

在单个字符串中显示job_idjob_lvl列(均为数值型)。

上页:Access 2003完整教程:输入搜索值的规则 (ADP) 下页:Access 2003完整教程:“查询设计器”表示联接的方式 (ADP)

Access 2003完整教程:处理表达式的 SQL 标量函数 (ADP)

Access 2003完整教程:“查询设计器”表示联接的方式 (ADP)Access 2003完整教程:关于索引视图和架构绑定 (ADP)
Access 2003完整教程:关于索引 (ADP)Access 2003完整教程:数据库图表和表设计窗口之间的交互 (ADP)
Access 2003完整教程:数据库图表、表设计窗口和数据库之间的交互 (ADP)Access 2003完整教程:关于自动联接表 (ADP)
Access 2003完整教程:关于键 (ADP)Access 2003完整教程:关于大型数据库项目 (ADP)
Access 2003完整教程:逻辑运算符 (ADP)Access 2003完整教程:关于数据库对象的所有权 (ADP)
Access 2003完整教程:关于 SQL Server 数据库的“查询设计器”注意事项 (ADP)Access 2003完整教程:关于“查询设计器”布局 (ADP)
Access 2003完整教程:在查询中选择与值不匹配的行 (ADP)Access 2003完整教程:关于创建查询 (ADP)
Access 2003完整教程:关于聚合函数 (ADP)Access 2003完整教程:关于“查询设计器”中的汇总和分组行为 (ADP)
Access 2003完整教程:关于不同的查询类型 (ADP)Access 2003完整教程:关于“表设计器” (ADP)
Access 2003完整教程:关于表关系 (ADP)Access 2003完整教程:关于表 (ADP)
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号