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

有时,你可能希望仅基于日期值的月份部分对 Access 中的记录进行排序,并忽略日期和年份。 或者,你可能希望仅基于文本字段的前几个字符对记录进行排序。 本主题演示如何通过创建简单表达式来执行这些搜索。

你要做什么?

按部分日期值排序

使用排序命令之一对记录进行排序时,整个日期值(日、月、年)用于确定每条记录的位置。 但是,假设只想根据生日的月份对生日进行排序,并忽略值的"天"和"年"部分。

仅对一部分日期值进行排序需要编写表达式。 您可以对表中的数据或查询结果进行排序 ,但必须先位于数据表视图中。 在"筛选器"选项卡的查询区域编写 表达式 。 创建的表达式只提取需要的数据,然后使用它作为排序的基础。

显示"筛选"选项卡

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

    如果正在处理查询,请运行查询以在数据表视图中显示结果。

  2. 在"开始"选项卡上的"排序&"组中,单击"高级",然后在快捷菜单上单击"高级筛选/排序"。

    Access 显示名称中带筛选器的新对象选项卡。

创建表达式

  1. 在"开始"选项卡上的"排序&"组中,单击"高级",然后在快捷菜单上单击"高级筛选/排序"。

  2. 在首列的 "字段 "行中键入表达式。 例如,若要按月排序而不考虑年份,请键入表达式Expr1:DatePart ("m",[BirthDate]) 第一列的"字段"行中。

  3. 若要按每月中的天数对记录进行排序,请键入Expr2:DatePart ("d",[BirthDate]) 第二列的"字段"行中。

    一列中的 DatePart 函数按月对记录进行排序,第二列中的 DatePart 函数按月份中的天数对记录进行排序。

  4. 在" 排序 "行 针对每个表达式 选择"升序"或"降序"。

    第一列中的升序排序显示在顶部,12 月显示在底部。 第二列中的升序排序在顶部显示 1,底部显示 31。 降序排序顺序与之相反。

  5. 在"开始"选项卡上的"排序和&组中,单击"切换筛选器"。

返回页首

对部分文本值进行排序

对部分文本值进行排序与按部分日期值排序非常相似。 需要在"高级筛选/排序"窗口中编写表达式,以提取构成排序基础的字符。

假设 City 字段包含值,例如North Seattle、SouthSeattle、NorthTacomaSouth Tacoma。 假设你想要忽略第一个单词,并单独对第二个单词上的记录进行排序。

  1. 在"开始"选项卡上的"排序&"组中,单击"高级",然后在快捷菜单上单击"高级筛选/排序"。

  2. 在首列的 "字段 "行中键入表达式。 例如,键入 =Mid ([City],) 忽略 City 字段中前六个字符。

    Mid函数返回指定字符串或字段中包含的子字符串。 在这种情况下,对于每个记录,该函数将返回从第七个字符开始的值 (,即,在 City 字段中) 空格之后。

  3. 在"排序"单元格中,选择"升序""降序"。

  4. 在"开始"选项卡上的"排序和&组中,单击"切换筛选器"。

返回页首

需要更多帮助?

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×