ACCESS函数大全
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ACCESS高级操作
一.Access函数大全
1.1日期/时间
CDate 将字符串转化成为日期select CDate("2005/4/5")
Date 返回当前日期
DateAdd 将指定日期加上某个日期select dateAdd("d",30,Date())将当前日期加上30天,其中d可以换为yyyy或H等
DateDiff 判断两个日期之间的间隔select DateDiff("d","2006-5-1","2006-6-1")返回31,其中d 可以换为yyyy,m,H等
DatePart 返回日期的某个部分select DatePart("d","2006-5-1")返回1,即1号,d也可以换为yyyy(年)或q(季),m(月),d(日),w(工作日),ww(周),h(时),n(分),s(秒)Day 返回日期的d部分,等同于datepart的d部分
Dateserial(年,月,日) 组合年月日构造日期
Hour 返回日期的小时
IsDate 判断是否是日期,是日期返回-1,不是日期返回0
Minute 返回日期的分钟部分
Month 返回日期的月份部分
Now 返回当前时间(完整时间,包括年月日小时分秒)
Second 返回日期的秒部分
Time 返回当前的时间部分(即除去年/月/日的部分)
Weekday 返回某个日期的当前星期(星期天为1,星期一为2,星期二为3...),例如select weekday(now());
Year 返回某个日期的年份
1.2检查
IsEmpty 检测是否为空(不过经测试,不管什么情况,都返回0)
IsNull 检测是否为Null值,null值返回0,非null值返回-1
IsNumeric 检测是否为数字,是数字返回-1,否则返回0
1.3算术
Abs 绝对值
Atn 返正切值。
Cos 余弦值
Exp 返回e 的给定次幂。
Fix 返回数字的整数部分(即小数部分完全截掉)
Int 将数字向下取整到最接近的整数。
(其实等同于Fix)
Log 返回以E为底的对数值
Rnd 返回一个0到1之间的随机数值
Sgn 返回数字的正负符号(正数返回1,负数返回-1,0值返回0)
Sin 正弦值
Sqr 返回平方根值
Tan 正切值
▲程序流程
Choose 根据第一参数,返回后面字符串组的值,Select Choose(1,"a","b","c")返回a,将1改成2后,返回b,改成3后,返回c(第一个参数也可以是某个字段)
IIF 根据表达式返回特定的值Select IIF("3>1","OK","False"),返回OK
▲Sql合计(聚合)函数
Avg 取字段平均值
Count 统计记录条数
Max 取字段最大值
Min 取字段最小值
StDev 估算样本的标准差(忽略样本中的逻辑值和文本)。
StDevP 计算以参数形式(忽略逻辑值和文本)给出的整个样本总体的标准偏差。
Sum 计算字段的总合
Var 估算样本方差(忽略样本中的逻辑值和文本)。
VarP 计算整个样本总体的方差(忽略样本总体中的逻辑值和文本)。
1.4文本
Asc 返回字母的Acsii值,select Asc("A")返回65
Chr 将ascii值转换到字符select chr(65)返回"A"
Format 格式化字符串,Select Format(now(),'yyyy-mm-dd')返回类似于"2005-04-03" ,Select Format(3/9,"0.00")返回0.33
InStr 查询子串在字符串中的位置select Instr("abc","a")返回1,select Instr("abc","f")返回0 LCase 返回字符串的小写形式
Left 左截取字符串
Len 返回字符串长度
LTrim 左截取空格
Mid 取得子字符串select mid("123",1,2) as midDemo 返回12
Right 右截取字符串
RTrim 右截取空格
Space 产生空格select Space(4)返回4个空格
StrComp比较两个字符串是否内容一致(不区分大小写)select StrComp("abc","ABC")返回0,select StrComp("abc","123")返回-1
Trim 截取字符串两头的空格
UCase 将字符串转大写
二、access中有效性规则的写法
有效性规则示例
下表提供了字段级和记录级有效性规则的示例,以及说明性有效性文本。
可以针对您的内容对这些示例进行相应的改编。
有效性规则有效性文本
<>0 输入非零值。
>=0 值不得小于零。
- 或-必须输入正数。
0 or >100 值必须为0 或者大于100。
BETWEEN 0 AND 1 输入带百分号的值。
(用于将数值存储为百分数的字段。
)
<#01/01/2007# 输入2007 年之前的日期。
>=#01/01/2007# AND <#01/01/2008# 必须输入2007 年的日期。
<Date() 出生日期不能是将来的日期。
StrComp(UCase([姓氏]),
[姓氏],0) = 0 “姓氏”字段中的数据必须大写。
>=Int(Now()) 输入当天的日期。
M Or F 输入M(代表男性)或F(代表女性)。
LIKE "[A-Z]*@[A-Z].com" OR "[A-Z]*@[A-Z].net" OR "[A-Z]*@[A-Z].org" 输入有效的.com、.net 或.org 电子邮件地址。
[要求日期]<=[订购日期]+30 输入在订单日期之后的30 天内的要求日期。
[结束日期]>=[开始日期] 输入不早于开始日期的结束日期。
常见有效性规则的语法
有效性规则中的表达式不使用任何特殊语法。
本节中的信息说明某些较常见类型的有效性规则的语法。
在执行操作时,请记住:表达式和函数可能会非常复杂,全面的讨论不在本文讨论范围之内。
有关表达式的详细信息,请参阅创建表达式一文。
有关函数的详细信息,请参阅函数(按类别排列)一文。
创建表达式时,请牢记下列规则:
将表字段的名称用方括号括起来,例如:[要求日期]<=[订购日期]+30。
将日期用井号(#) 括起来,例如:<#01/01/2007#
将文本值用双引号括起来,例如:IN ("东京","巴黎","莫斯科")。
另外,请注意用逗号分隔项目,并将列表放在圆括号内。
除了上述规则之外,下表显示了常见的算术运算符并提供了使用方法示例。
运算符函数示例
NOT 测试相反值。
在除IS NOT NULL 之外的任何比较运算符之前使用。
NOT > 10(与<=10 相同)。
IN 测试值是否等于列表中的现有成员。
比较值必须是括在圆括号中的逗号分隔列表。
IN ("东京","巴黎","莫斯科")
BETWEEN 测试值范围。
必须使用两个比较值(低和高),并且必须使用AND 分隔符来分隔这两个值。
BETWEEN 100 AND 1000(与>=100 AND <=1000相同)
LIKE 匹配文本和备注字段中的模式字符串。
LIKE "Geo*"
IS NOT NULL 强制用户在字段中输入值。
此设置与将“必填”字段属性设置为“是”具有同样的效果。
但是,如果启用了“必填”属性但用户没有输入值,则Access 会显示令人稍感不快的错误消息。
通常,如果使用IS NOT NULL 并在“有效性文本”属性中输入友好的消息,则您的数据库会更易于使用。
IS NOT NULL
AND 指定您输入的所有数据必须为True 或在指定的范围内。
>= #01/01/2007# AND <=#03/06/2008#
注释您还可以使用AND 来组合有效性规则。
例如:NOT "英国" AND LIKE "英*"。
Len([联系电话])=11
OR 指定可以有一段或多段数据为True。
一月OR 二月"男" Or "女"
替换函数:Replace([款式编号],"E11EJ5120a"," 1E11EJ5120a ");
四舍五入:Round(([实际成本]+[材料成本])/[报价成本]*100,2) & "%"
< 小于。
<= 小于或等于。
> 大于。
>= 大于或等于。
= 等于。
<> 不等于。
在有效性规则中使用通配符
在有效性规则中,可以使用Access 提供的通配符。
请记住,Access 支持两个通配符字符集,这是因为对于用于创建和管理数据库的结构化查询语言(SQL),Access 支持两种标准(ANSI-89 和ANSI-92)。
这两种标准使用不同的通配符字符集。
默认情况下,所有.accdb 和.mdb 文件都使用ANSI-89 标准,而Access 项目使用ANSI-92 标准。
如果您是Access 新手,应注意在Access 项目中,数据库中的表驻留在运行Microsoft SQL Server 的计算机上,而窗体、报表和其他对象驻留在其他计算机上。
如果需要,可以将.accdb 和.mdb 文件的ANSI 标准更改为ANSI-92。
三、设置表中数据的格式
“文本”和“备注”数据类型的自定义格式
文本(“文本”数据类型:Microsoft Access 数据库中的一种字段数据类型。
文本数据类型最多可以包含255 个字符,或者是由FieldSize 属性指定的一个小一些的字符数。
)、备注(“备注”数据类型:在Microsoft Access 数据库中的一种字段数据类型。
“备注”字段最多可以包含65,535 个字符。
)和超链接(“超链接”数据类型:存储超链接地址的Access 数据库字段的数据类型。
地址最多可以包含四部分,用以下语法格式编写:displaytext#address#subaddress#。
)数据类型不接受预定义格式。
“文本”数据类型仅接受自定义格式,“备注”数据类型接受自定义格式和格式文本格式,而“超链接”数据类型接受自定义格式(可以设置控制链接颜色的程序选项)。
通常会将自定义格式应用于“文本”和“备注”数据类型,以便能更轻松地读取表数据。
例如,如果使用Web 窗体收集信用卡号码,并在存储这些号码时不添加任何空格,则可以使用自定义格式添加适当的空格,以便能更轻松地读取信用卡号码。
“文本”和“备注”数据类型的自定义格式仅允许一个字符串中包含两个格式部分。
格式字符串的第一个部分将控制文本的外观,而第二部分将显示空值或零长度的字符串。
如果不指定格式,则Access 会将数据表中的所有文本对齐。
若要了解有关对“文本”或“备注”字段应用自定义格式的详细信息,请参阅应用自定义格式。
下表列出并说明了可应用于“文本”和“备注”字段的自定义格式。
字符说明
@ 如果格式字符串中的任何字符位置有可用的字符,则显示这些字符。
如果Access 将所有字符置于基础数据中,则任何剩余的占位符将显示为空格。
例如,如果格式字符串为@@@@@ 而基础文本为ABC,则该文本将添加两个前导空格以便向左对齐。
& 如果格式字符串中的任何字符位置有可用的字符,则显示这些字符。
如果Access 将所有字符置于基础数据中,则任何剩余的占位符将不会显示任何内容。
例如,如果格式字符串为&&&&& 且文本为ABC,则仅显示向左对齐的文本。
! 用于强制从左至右而不是从右至左填充占位符。
必须在任何格式字符串的开头使用此字符。
< 用于将所有文本强制为小写。
必须在格式字符串的开头使用此字符,但可以在其前面放置一个感叹号(!)。
> 用于将所有文本强制为大写。
必须在格式字符串的开头使用此字符,但可以在其前面放置一个感叹号(!)。
* 使用星号时,紧随其后的字符将变成填充字符(用来填充空格的字符)。
Access 一般会以左对齐方式显示文本,并用空格填充该值右侧的任何区域。
可以在格式字符串中的任何位置添加填充字符。
当您这样做时,Access 会用指定的字符填充任何空格。
空格+ - $ () 用于根据需要在格式字符串中的任何位置插入空格、数学字符(+ 和-)、财务符号($、¥和£)和圆括号。
如果您想使用其他常见的数学符号,如斜杠(\ 或/)和星号(*) 等,请用双引号引起它们(请注意,可以将这些字符置于格式字符串中的任何位置)。
"文本" 用双引号引起您希望显示给用户的任何文本。
\ 用于强制Access 显示紧随其后的字符,这与用双引号引起一个字符具有相同的效果。
[颜色] 用于向格式中某个部分的所有值应用颜色。
必须用方括号括起颜色的名称并使用下列名称之一:黑色、蓝色、蓝绿色、绿色、洋红、
其他格式详见:(/zh-cn/access-help/HA001233061.aspx)。