按文本、数值或日期值对记录进行排序

重要:  本文是由机器翻译的,请参阅免责声明。请在 此处 中查找本文的英文版本以便参考。

对数据进行排序在使报表或窗体有效和易用方面起着非常重要的作用。例如,使用按字母顺序或基于单价列出产品的产品目录,比使用按随机顺序列出项目的目录容易得多。

本主题介绍在查看和设计表、查询、窗体或报表时如何对记录进行排序。

本文内容

简介

对视图中的记录进行排序

删除排序顺序

将排序次序保存为对象

简介

在日常生活中看到的一些列表,要么已经排序,要么允许您按照所需的方式对它们进行排序。日历或日程表按日期进行排序。而当您搜索机票或浏览电子邮件收件箱中的条目时,则可以选择按多个可用字段之一来进行排序。可以按价格、起飞时间或航空公司来对机票进行排序,可以按发件人、主题或日期对邮箱中的条目进行排序。排序列表有助于用户不必浏览数据即可查看和查找所需的内容。

可以按一个或多个字段对表、查询、窗体或报表中的记录进行排序。只需很少的设计工作,您和您的窗体或报表的用户就可以选择如何对记录进行排序。

例如,当您设计产品目录报表时,可以选择按字母顺序列出产品。在设计某个对象时选择的顺序变成该对象的默认排序顺序。但是,当查看查询或报表时,每个用户都可以按照他们所需的方式(如按价格或按供应商)对记录进行排序。

注意: 可以按照视图中显示的任何字段(包含附件或 OLE 对象的字段除外)对视图进行排序。

可以通过按多个字段对记录进行排序来微调结果。当按多个字段进行排序时,一定要确定哪些字段被称作最外层排序字段,哪些字段被称作最内层排序字段。将适当的字段指定为内层排序字段和外层排序字段是获得所需结果所必需的。例如,假设您希望按 FirstName 和 LastName 字段对 Contacts 表进行排序。如果您希望对每个姓氏中的名字按从 A 到 Z(或从 Z 到 A)的顺序进行排序,则 FirstName 是最内层字段。相反,如果您希望对每个名字中的姓氏进行排序,则 LastName 是最内层字段。换言之,记录将首先按 LastName 字段(最外层字段)进行排序,然后再按 FirstName 字段(最内层字段)进行排序。

最内层和最外层的排序字段

1. 姓氏是最外层字段,名字是最内层字段

2. 名字是最外层字段,姓氏是最内层字段

有一点需要记住,那就是在应用排序顺序时,数字、文本和特殊字符将按计算机上的选定语言和区域设置进行排序。如果在“Access 选项”对话框中指定的语言和区域设置与在“控制面板”中指定的设置不一致,则得到的排序顺序可能和预期的不一样。

查看或更改默认的语言或区域

若要查看的语言设置在 Access 中,单击 Office 按钮图像 Microsoft Office 按钮,,然后单击Access 选项。在设置下查看,或更改新建数据库排序次序列表框中的值。如果您想要使用其中一种语言,将选项设置为常规-南非荷兰语、 阿尔巴尼亚语、 阿拉伯语、 巴斯克语、 保加利亚语、 白俄罗斯语、 加泰罗尼亚语、 荷兰语、 英语、 法罗语、 波斯语德语标准、 希腊语、 希伯来语、 印地语、 印度尼西亚语、 意大利语、 马来语、 葡萄牙语、 俄语、 塞尔维亚语、 斯瓦希里语、 和乌尔都语。请注意,此设置将影响新的数据库。若要将此设置应用到现有数据库,压缩的第一个数据库。

要压缩数据库,请执行以下操作:

  • 单击Microsoft Office 按钮 Office 按钮图像 ,指向管理,然后在管理此数据库,请单击压缩和修复数据库

若要查看计算机的区域设置,请在“控制面板”中打开“区域和语言选项”。在“区域选项”选项卡上,查看其中的设置并进行所需的更改。有关详细信息,请参阅 Microsoft Windows 帮助。

返回页首

对视图中的记录进行排序

注意: 在 Access 中,对报表进行排序与对表、查询或窗体进行排序稍有不同。

对报表进行排序

对表、查询或窗体进行排序

对报表进行排序

  1. 在布局视图或设计视图中打开某个报表。

  2. 如果未打开的分组、 排序和汇总窗格中,在分组和汇总组 (在布局视图中的格式选项卡) 或设计视图中的设计选项卡上单击分组和排序

  3. 请执行下列操作之一:

    • 如果对报表既没有进行分组也没有进行排序,请在“分组、排序和汇总”窗格中单击“添加组”,然后选择最外层的排序字段。单击第二个下拉箭头,并选择应如何对这些值进行排序。单击“其他”,单击“有页眉节”右侧的箭头,然后选择“无页眉节”。对于每个排序字段,都重复上述步骤,并使最内层的排序字段显示在底部。

    • 如果已经对报表进行了分组或排序,请查看现有的级别并谨慎进行更改。若要更改字段,请使用第一个下拉箭头。若要更改排序顺序,请单击第二个下拉箭头。如果只是将分组级别更改为某个排序级别,请将“有页眉节”更改为“无页眉节”

提示: 若要按单个字段对报表进行排序,请在布局视图中打开该报表,右键单击该字段,然后选择所需的排序命令。例如,如果您选择“Age”字段,请单击“从最小到最大排序”“从最大到最小排序”。但是,如果已经对该报表进行分组或者如果您希望按多个字段进行排序,则必须使用“分组、排序和汇总”窗格。

对表、查询或窗体进行排序

  1. 确定要作为排序依据的字段。若要按两个或多个字段进行排序,请确定将充当最内层排序字段和最外层排序字段的字段。

  2. 在与最内层字段相对应的列或控件中的任何位置,右键单击,然后单击某个排序命令。排序命令因选定字段中数据的类型而异。

    注意: 对数据类型为“是/否”的字段的数据进行排序时,“是”、“真”或“开”值被视为“选定”,而“否”、“假”或“关”值被视为“清除”。对此类型字段的默认显示为复选框,但是您可以对其进行设置以显示为文本框或组合框。如果将此类型字段的显示更改为文本框或组合框,它仍会按照“选定”或“清除”排序。

    排序选项

    1. 数字、货币、自动编号

    2. 文本、备注、超链接

    3. 是/否

    4. 日期/时间

  3. 对每个排序字段重复上一步,最后处理最外层的排序字段。

    这些记录将重新排列,以便与排序顺序保持一致。

    注意: 如果某个文本字段中包含 null 和长度为零的字符串,那么,在按升序排序时,将首先列出值为 null 的记录,接着列出具有零长度字符串的记录,最后列出具有非空值的记录。

    了解在排序过程中如何处理特殊字符、前导空格和负值

    如果字段中的值以特殊字符(如连字符、括号或其他字符)开始,那么,在按升序进行排序时,您将会注意到以下行为:  

    • 以空格字符开头的值将出现在字母数字值前面。

    • 用引号引起来的值跟在以空格开头的值后面,但是位于字母数字值前面。

    • 以减号 (-) 开头的值位于以加号 (+) 开头的值前面。

    • 对于所有其他字符,可通过查看字符的 ASCII 字符代码来确定顺序。例如,美元符号 ($) 的代码为 36,等号 (=) 的代码为 61,因此,以 $ 开头的值将出现在以 = 开头的值前面。

      要替代此顺序,可以选择忽略字段中所有值的第一个字符。如果字段中的值总是以单个特殊字符(如减号)或相同数量的特殊字符(使用此方法,您要知道要忽略多少字符)开头,则可以使用此方法。有关如何对部分值进行排序的分步信息,请参阅文章基于字段中的部分值对记录进行排序。如果要忽略的字符数是不固定的,则可以指定一个自定义的排序次序。有关分步信息,请参阅文章根据字段中的部分值对记录进行排序。 

请记住,不能只从单个字段中删除排序次序。要从所有的排序字段中删除排序,请在“起始页”选项卡的“排序和筛选”组中,单击“清除所有排序”,然后应用所需的排序次序。

其他排序方案   

当您使用排序命令时,可以使用字段的数据类型以及每个字段的所有值来确定记录的顺序。但是,如果您希望按自定义顺序(而非字母顺序)对文本值(如 Monday、Tuesday 等)进行排序该怎么办?或者,如何您希望对包含 IP 地址的文本字段进行排序,该怎么办?如果排序命令无法满足您的排序要求,请参见下列主题:

  • 基于字段中的部分值对记录进行排序:您是否希望基于字段中的前几个或最后几个字符对记录进行排序?如果您喜欢编写简单的表达式,请参见本主题,其中介绍了如何使用表达式来提取部分值。

  • 按区分大小写的顺序对记录进行排序:Access 会忽略文本值的大小写。例如,smith 值和 Smith 值将被视为完全相同,您无法控制哪一个先出现。如果您希望执行区分大小写的排序,请参见本主题。

  • 按存储在文本字段中的数值对记录进行排序:您要查看按单个数字(而非数值)排序的记录。例如,如果值为 11 和 121 的记录出现在值为 2 或 25 的记录前面,请参阅本主题。

  • 按自定义顺序对记录进行排序:如果要按照对您来说有意义的顺序对某些值—如日期的名称(Monday、Tuesday 等)或职员的职务(Manager、Director)—进行排序,请参阅本主题。

  • 对 IP 地址进行排序:用来存储 IP 地址的字段中包含多个数字和句点 (.),因此简单的文本或数字排序对于 IP 地址将不适合。若要了解如何对 IP 地址进行排序,请参见本主题。

返回页首

删除排序顺序

  • 要从表、查询或窗体中删除排序次序,请在“起始页”选项卡上的“排序和筛选”组中,单击“清除所有排序”

    这将从视图中的所有字段中删除排序顺序。

  • 若要从报表中删除排序顺序,请打开分组、 排序和汇总窗格中,通过单击 (在布局视图中,在设计视图中的设计选项卡上的格式选项卡上) 的分组和汇总组中的分组和排序。然后,单击要从中删除,排序级别,然后单击删除。对应于排序字段输入将开头排序依据的字词。避免删除与分组依据,开始的条目,因为这将更改报表的设计。

返回页首

随对象保存排序顺序

上次应用的排序顺序会自动随表、查询、窗体或报表进行保存。如果您希望在下次打开该对象时,将自动应用上次应用的排序顺序,请确保该对象的“加载时的排序方式”属性设置为“是”。

由于上次应用的排序顺序将时常更改,因此,您可能希望定义一个永久(或默认)的排序顺序。您可以为查询或报表指定默认的排序顺序。需要特别注意的一点是:尽管默认的排序顺序不会被当前的排序顺序或者上次保存的排序顺序覆盖,但是,只有当您从视图中删除当前的排序顺序或上次保存的排序顺序之后,默认的排序顺序才生效。

  • 若要为查询定义默认的排序顺序,请在设计视图中打开它。向设计网格中添加排序字段,然后在“排序”行中指定所需的排序顺序。

  • 若要为报表定义默认的排序顺序,请在布局或设计视图中使用“分组、排序和汇总”窗格。有关分步信息,请参阅对报表进行排序一节。

要查看按默认的排序次序进行排序的记录,请在“起始页”选项卡上的“排序和筛选”组中,单击“清除所有排序”。这会从视图中删除当前或上次保存的筛选,并允许您查看按默认顺序列出的记录。

返回页首

注意: 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

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

此信息是否有帮助?

谢谢您的反馈!

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

×