Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access2007

access 2007基于字段中的部分值对记录排序

时 间:2008-07-26 08:07:02
作 者:Microsoft   ID:11  城市:上海  QQ:3002789054点击这里给麥田发消息
摘 要:基于字段中的部分值对记录排序
正 文:

有时,可能需要只基于日期值的月部分对记录排序,而忽略日和年。也可能需要只基于文本字段的前几个字符对记录排序。本主题介绍如何通过创建简单的表达式来执行这些搜索。



按部分日期值进行排序

使用某个“排序”命令对记录排序时,将用整个日期值(日、月和年)来确定每个记录的位置。但假设您希望只基于发生月来对生日排序,并忽略值中的日和年部分。  

仅按日期值的一部分排序时,需要编写表达式。可以按表或查询结果中的数据进行排序 - 但是必须在第一个数据表视图中。可以在“筛选”选项卡的查询区域中编写表达式。所创建的表达式只提取所需的数据,然后使用它作为排序的基础。

显示“筛选”选项卡

  1. 将表或查询切换到数据表视图。

    如果使用查询,请运行查询以便在数据表视图中显示结果。

  2. “开始”选项卡上的“排序和筛选”组中,单击“高级”,然后单击快捷菜单上的“高级筛选/排序”

    Access 将显示“筛选”选项卡。

创建表达式

 

  1. “开始”选项卡上的“排序和筛选”组中,单击“高级”,然后单击快捷菜单上的“高级筛选/排序”
  2. 在第一列的“字段”行中键入表达式。例如,若要按月排序,而不考虑年,则在第一列的“字段”行中键入表达式 Expr1: DatePart("m",[BirthDate])
  3. 若要按每个月中的日对记录排序,则在第二列的“字段”行中键入 Expr2: DatePart("d",[BirthDate])

    第一列中的 DatePart 函数将按月对记录排序,而第二列中的 DatePart 函数将按每个月中的日对记录排序。

  4. “排序”行中,为每个表达式选择“升序”“降序”

    第一列中的升序排序将在顶部显示一月,在底部显示十二月。第二列中的升序排序将在顶部显示 1,在底部显示 31。降序排序则相反。

  5. “开始”选项卡上的“排序和筛选”组中,单击“切换筛选”

 

按部分文本值进行排序

按部分文本值排序非常类似于按部分日期值排序。您需要在“高级筛选/排序”窗口中编写表达式,以提取构成排序基础的字符。

假设“城市”字段包含诸如“North Seattle”、“South Seattle”、“North Tacoma”或“South Tacoma”这样的值。假设您希望忽略第一个单词,而单独按第二个单词对记录排序。

  1. “开始”选项卡上的“排序和筛选”组中,单击“高级”,然后单击快捷菜单上的“高级筛选/排序”
  2. 在第一列的“字段”行中键入表达式。例如,键入 =Mid([City], 7) 以忽略“城市”字段的前六个字符。

    Mid 函数将返回在指定字符串或字段中所包含的子字符串。在这里,对于每个记录,该函数将返回在“城市”字段中从第七个字符开始(即在空格之后)的值。

  3. “排序”单元中,选择“升序”“降序”
  4. “开始”选项卡上的“排序和筛选”组中,单击“切换筛选”


Access软件网官方交流QQ群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助