论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Access数据库教程
Tag:2000,2003,2007,查询,sql,,教程,安全,转换,排序,复制,删除,修改,视频教程

Access 2007按存储在文本字段中的数值对记录排序

文章类别:Access数据库 | 发表日期:2008-10-5 18:44:29

时 间:2008-7-28 8:07:30
作 者:Microsoft
摘 要:按存储在文本字段中的数值对记录排序
正 文:

存储在文本或备注字段中的数字和字符串将按字母次序排序。换句话说,数字将基于组成值的各个数字位(而不是基于数值)进行排序。例如,值 11 出现在 2 之前,值 12 出现在 3 之前,如下表所示。

学生名字 学号
John 1
Maria 10
William 11
Mary 12
Jane 2
Lynn 3
Jason 4
Mary 5

若要确保学号基于其数值而不是按字母次序进行排序,请执行下列某项操作:

  • 如果字段只包含数值,请考虑将字段的数据类型更改为“数字”“货币”
  • 使用以下步骤,如果:
    • 字段只包含数值,但您不希望更改字段的数据类型。
    • 字段同时包含数值和字符串值,但您想在排序时忽略字符串值。

 


以下步骤将使用 Val 函数来获取作为文本存储的数字的数值。该表达式还使用 IIf 函数来处理可能出现在排序字段中的 Null 值。

  1. “开始”选项卡上的“排序和筛选”组中,单击“高级”,然后单击快捷菜单上的“高级筛选/排序”
  2. 在第一列中的“字段”行内键入表达式“Expr1: IIf([Fieldname] Is Null, 0, Val([Fieldname]))”

    IIf 函数将检查字段值是否是 Null,如果是,则将它视为 0。如果值不是 Null,IIf 函数将调用 Val 函数来获取等价的数值。

  3. “排序”单元中,选择“升序”“降序”

    升序排序将在顶部显示具有最小值的记录,在底部显示具有最大值的记录。降序排序则相反。

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

如果上述步骤不适合于您,您可以尝试用另一个途径来避免更改表的结构。这包括使用前导零来“填充”位数较少的值。例如,在应用排序之前,将值 11、2、2000 和 3 更改为 0011、0002、2000 和 0003。

视频教程列表
文章教程搜索
 
Access数据库推荐教程
Access数据库热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058