access里面的表达式运用_Access 如何使用表达式生成器

表达式生成器(Expression Builder)可以帮助您构建索引、验证规则、默认值等的表达式。

Access 2016有一个可以简化构建表达式过程的表达式生成器。您可以使用表达式生成器创建索引,在字段上设置默认值,对字段设置验证规则,等等。

表达式生成器类似于一个索引向导,在这里您可以浏览您难以记住的表达式列表。它允许您将表达式组合成更大、更复杂的表达式,可以帮助您创建索引或将数据规则应用于字段。

表达式是任何表示有效值的符号组合。表达式生成器包括以下内容,可以帮助您构建一个表达式:内置函数:例如,Count(),Date(),MsgBox().

常数:例如,True,False,NULL.

运算符:例如,>=,&,And.

字段:例如,tables,queries,forms,reports.

之前我们创建了一个简单的索引,现在我们将在表达式生成器的帮助下创建另一个查询。

使用表达式生成器创建索引

我们的数据库中充斥着老式音乐。有人问我们的数据库是否包含了过去25年中发布的任何专辑。所以我们决定构建一个索引来找出答案。

但我们希望查询的日期回溯到25年前。这样的话,如果别人问同样的问题,比如10年的时间,我们可以重新运行相同的索引,它将回溯25年前的那个日期。

但是我们不知道如何构造这个索引,所以…就要用到表达式生成器!

首先,创建一个新索引

因为我们将使用表达式生成器来帮助构建索引,所以我们需要先创建一个索引。然后我们可以从该索引中启动表达式生成器。

1.运行“Query Designer”

单击选项卡Create的“Query Design”。

显示Show Table对话框。

2.选择表

选择 “Artists” 和 “Albums”,点击“Add”。

关闭对话框。

3.选择要展示的内容

添加如下内容:Albums.ReleaseDate

Albums.AlbumName

Albums.Genre

Artists.ArtistName

并保持“Show”展示。

是时候使用表达式生成器了

现在我们已经打开了一个索引,我们可以继续启动表达式生成器了。

1.运行生成器

在“ReleaseDate”下面,点击“Criteria”单元。

再点击选项卡下的“Builder”,即打开。

2.添加一个内置函数

首先,单击左侧窗格上的“函数s”,然后点击中间的“Built-in functions”和“Date/Time”。

在右窗格中,向下滚动直到看到Year()函数。双击Year(),使它出现在顶部窗格中。

Year()函数的作用是:返回在括号之间指定日期的“年份”。

3.添加字段内容

在顶部窗格中,单击函数的方括号内的«date»,以便突出显示它。 现在,展开Music.accdb,然后展开Tables,然后单击专辑来显示该表的所有内容。双击ReleaseDate,它将替换顶部窗格中的«date»。

4.添加运算符

现在单击函数的右侧,继续构建表达式。

在左窗格上,单击Operators,然后在中间窗格中点击Comparison,以显示比较运算符。

双击大于符号(>),使其添加到顶部窗格中。

5.返回当前年份

我们的查询将比较两个“Year”值。因此添加另一个Year()函数,并单击«Date»以高亮。

现在,在右窗格中,向上滚动到Date()函数。双击它,以替换«Date»。

Date()函数的作用是:返回当前的系统日期。

Year()函数的作用是:返回日期的“年”。

6.再添加运算符

点击右侧的表达式,这样你就可以添加一个“小于”运算符(-)。

在左窗格中,单击Operators,然后点击中间窗格中的“Arithmetic”显示算术运算符。

双击(-)使它添加到顶部窗格。

7.添加一个固定值

在表达式的末尾键入25。这是我们想要查询的时间。对于更长的或更短的时间跨度,只需更改即可。

这个表达式现在已经完成了。单击OK将表达式添加到索引并关闭表达式生成器。

8.运行

您的索引现在已经在Criteria字段中列出了完整的表达式。可以随意扩展列的宽度,这样可以看到整个表达式。

单击View或Run以运行查询。

9.运行结果

你现在可以看到,我们确实有很多专辑在过去的25年里发行了:)

将索引保存为“Albums from the last 25 Years”,或者其他命名。

不同的设计

在设计视图中构造索引的方法通常不止一种。通常,可以通过不同的索引设计实现相同的结果。

这里有一个和上面表达式相同的例子,但是在设计视图中使用稍微不同索引构造。

参数查询

*我们还可以将此索引转换为参数索引,这样会更有用。 *

我们可以让用户指定要查询多少年前的内容。

你所需要做的就是用[How many years back?]来替换25,或类似的东西。

人工构造一个表达式

如果您已经知道要使用的表达式,则不需要使用表达式构建器。您可以直接将它输入到索引构造器的Criteria字段中。

即使您打开了表达式构建器,您仍然可以在顶部窗格中直接键入表达式中的字符。例如,如果您已经知道了需要哪个表达式,就没有必要搜索它,您可以自己输入。

这里有两个基本表达式的例,应该很容易记住,而不需要表达式生成器:

1.一个特定的日期

查询所有发行在01/01/1980后的专辑。

通过用“>#1/1/1980#”替换“>[Starting From]”,将此转换为参数查询。

2.两个日期之间

查询所有80年代的专辑(即1980年至1990年发行)。

通过用“>#1/1/1980#”和“

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值