在ASP中使用SQL语句之7:ORDER BY

作者:佚名 来源:动网 时间:2007-08-11 12:51:00 

从Access数据库中选取记录有件最令人丧气的事情,它们是以怎样的顺序输入到数据库内就按照怎样的顺序出来。就算你在Access环境内采用Sort By来改变记录视图,数据表内的记录顺序也并没有发生改变。



如果你正在使用ASPrecordset在网页上写出记录,那么你或许知道乱纷纷的顺序是多令人痛苦的事。但是你可能不得不经常得面对这一问题,因为并不存在什么简单方便的解决方案。好在ORDER BY 可以简化这一难题。

为了对你的结果排序,只要在SELECT语句末尾加上ORDER BY,然后指定你需要排序的参照列即可。因此,如果你想要根据顾客的姓氏对Customers表排序,那么你可以编写如下的查询语句:

SQL = "SELECT c_lastname, c_firstname, c_email FROM Customers ORDER BY c_lastname"


这样,只要你建立了recordset而且开始把结果写到屏幕上,你就会看见数据按照字母顺序排列起来了。

多级排序
其实不仅仅可以在SQL语句中进行一级排序。实际上,在很多情况下,你可能会希望指定两到 * 深度的数据排序。假设你有以下数据表,其内容如下所示: [image003.gif]


先前采用的单级ORDER BY 排序是按下面的顺序取出数据的:
Absurdly Assured
absurd@assured.com

Absolutely Assured
absolutely@assured.com

Crazed Coder
crazy@coder.net

Loosely Fringe
loose@fringe.to

Lunatic Fringe
lune@fringe.to

Hands On
hands@yes.org

显然ORDER BY 起了应有的作用。在实际的表结构下,Absurdly Assured 是最后的条目,但它排在检索结果的最顶端。Hands On记录排最后因为 O 在以上列表中排在字母表最后。显然,Absolutely按照字母表最好排在Absurdly之前。为此,你需要采取第2级ORDER BY 排序标准,参照第2列进行排序:

SQL = "SELECT c_lastname, c_firstname, c_email FROM Customers ORDER BY
c_lastname, c_firstname"


其结果将首先按照c_lastname 列排序然后按照c_firstname 列排序。假如你的数据表包含的记录比较多,仔细设计排序会令输出结果编排更为合理。

投入使用
如果你同大多数程序员一样喜欢自己动手编代码,沉湎于掌握新技术的狂热之中。何不从ASP的冗长编码中转过头来尝试一下SQL编码呢?下面我们将就ASP编程时常见的问题以及如何在ASP中高效地利用SQL语句做一番探讨。


标签:ORDER,BY,SQL
0
投稿

猜你喜欢

  • 什么是Dynamic HTML(Dhtml)

    2010-03-16 12:40:00
  • SQL Server中索引使用及维护

    2008-11-25 11:13:00
  • 成为一个顶级设计师的第一准则

    2008-04-18 10:29:00
  • asp 性能测试报告 学习asp朋友需要了解的东西

    2011-03-09 10:57:00
  • 优化 MySQL 语句的十个建议

    2012-05-08 07:14:36
  • 讲解MaxDB数据库和MySQL的数据库的主要差别

    2012-02-25 20:04:34
  • 教你为MySQL数据库换挡加速

    2010-03-03 16:58:00
  • 浅谈javascript的分号[译]

    2009-12-13 10:34:00
  • phpMyAdmin开发人员访谈——4个人支持整个项目

    2010-05-26 15:34:00
  • MYSQL教程:保证安全的备份MYSQL数据库的方法

    2010-03-03 17:12:00
  • iframe高度自适应,兼容IE,FF

    2008-06-18 12:15:00
  • 文档标准的真实谎言

    2008-06-02 10:46:00
  • css网页下拉菜单制作方法(1):基本原理

    2007-02-03 11:39:00
  • AJAX缓存问题的两种解决方法(IE)

    2008-05-02 20:57:00
  • sqlserver isnull在数据库查询中的应用

    2011-12-01 10:30:25
  • 用err.raise自定义错误信息

    2008-02-20 12:48:00
  • 模拟兼容性的 inline-block 属性

    2008-04-08 12:37:00
  • 在系统崩溃的时候如何恢复原有的数据

    2009-01-08 13:26:00
  • Div即父容器不根据内容自适应高度的解决方法

    2010-04-23 18:19:00
  • 怎么样才能让ASP避免被SQL注入啊?

    2008-08-08 12:27:00
  • asp之家 网络编程 m.aspxhome.com