SQL 标量函数Access

注释   本主题中的信息仅适用于 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( ) 从字符串中提取一个或多个字符
SELECT SUBSTRING(phone,1,3)
FROM employee
                     

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

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

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

隐藏日期函数

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

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

DATEPART( ) 返回日期时间列的指定部分,包括日、月、年。
SELECT DATEPART(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( ) 根据指定的小数的位数对数字进行四舍五入
SELECT ROUND(qty * (price * discount), 2)
FROM sales
                     

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

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

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

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

                     

将 title 和 price (向上取最近的整数)值从 titles 表复制到 archivetitle 表。

隐藏系统函数

函数 说明 示例
DATALENGTH( ) 返回指定表达式使用的字节数。
SELECT DATALENGTH(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
WHERE SOUNDEX(au_fname) = 'M240'
                     

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

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

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值