打印本文 打印本文 关闭窗口 关闭窗口
SQL操作(初级、中级、高级)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数28556  更新时间:2007/11/14 11:12:15  文章录入:mintao  责任编辑:mintao
       …………………………………………………………

       Johnson White

       Marjorie Green

       Cheryl  Carson

      Michael OLeary

      Dean Straight

     

      (23 row(s)  affected)

    可以看到,SQL为你提供了对查询结果的许多控制。你应该在ASP编程过程中充分利用这些优点。使用SQL来操作查询结果几乎总是比使用有同样作用的脚本效率更高。

排序查询结果

    本章的介绍中曾强调过,SQL表没有内在的顺序。例如,从一个表中取第二个记录是没有意义的。从SQL的角度看来,没有一个记录在任何其他记录之前。

然而,你可以操纵一个SQL查询结果的顺序。在缺省情况下,当记录从表中取出时,记录不以特定的顺序出现。例如,当从表authors中取出字段au_lname时,查询结果显示成这样:

       au_lname

       …………………………………….

       White

       Green

       Carson

       OLeary

       Straight

      

       (23 row(s) affected)

    看一列没有特定顺序的名字是很不方便的。如果把这些名字按字母顺序排列,读起来就会容易得多。通过使用ORDER BY子句,你可以强制一个查询结果按升序排列,就像这样:

    SELECT au_lname FROM  authors  ORDER  BY  au_lname

    当这个SELECT语句执行时,作者名字的显示将按字母顺序排列。ORDER BY子句将作者名字按升序排列。

    你也可以同时对多个列使用ORDER BY子句。例如,如果你想同时按升序显示字段au_lname和字段au_fname,你需要对两个字段都进行排序:

    SELECT au_lname,au_fname FROM authors ORDER BY au_lname ,au_fname

    这个查询首先把结果按au_lname字段进行排序,然后按字段au_fname排序。记录将按如下的顺序取出:

      au_lname                         au_fname

      …………………………………………………………………….

      Bennet                           Abraham

      Ringer                            Albert

      Ringer                            Anne

      Smith                             Meander

     

      (23 row(s) affected)

    注意有两个作者有相同的名字Ringer。名为Albert Ringer的作者出现名为Anne Ringer的作者之前,这是因为姓Albert按字母顺序应排在姓Anne之前。

如果你想把查询结果按相反的顺序排列,你可以使用关键字DESC。关键字DESC把查询结果按降序排列,如下例所示:

       SELECT  au_lname,au_fname  FROM

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ...  下一页 >> 

打印本文 打印本文 关闭窗口 关闭窗口