PHP MySQL Order By 关键词

ORDER BY 关键词用于对记录集中的数据进行排序。

ORDER BY 关键词

ORDER BY 关键词用于对记录集中的数据进行排序。

语法

  1. SELECT column_name(s)
  2. FROM table_name
  3. ORDER BY column_name

注释:SQL 对大小写不敏感。ORDER BY 与 order by 等效。

例子

下面的例子选取 "Persons" 表中的存储的所有数据,并根据 "Age" 列对结果进行排序:

  1. <?php
  2. $con = mysql_connect("localhost","peter","abc123");
  3. if (!$con)
  4. {
  5. die('Could not connect: ' . mysql_error());
  6. }
  7.  
  8. mysql_select_db("my_db", $con);
  9.  
  10. $result = mysql_query("SELECT * FROM Persons ORDER BY age");
  11.  
  12. while($row = mysql_fetch_array($result))
  13. {
  14. echo $row['FirstName'];
  15. echo " " . $row['LastName'];
  16. echo " " . $row['Age'];
  17. echo "<br />";
  18. }
  19.  
  20. mysql_close($con);
  21. ?>

以上代码的输出:

  1. Glenn Quagmire 33
  2. Peter Griffin 35

升序或降序的排序

如果您使用 ORDER BY 关键词,记录集的排序顺序默认是升序(1 在 9 之前,"a" 在 "p" 之前)。

请使用 DESC 关键词来设定降序排序(9 在 1 之前,"p" 在 "a" 之前):

  1. SELECT column_name(s)
  2. FROM table_name
  3. ORDER BY column_name DESC

根据两列进行排序

可以根据多个列进行排序。当按照多个列进行排序时,只有第一列相同时才使用第二列:

  1. SELECT column_name(s)
  2. FROM table_name
  3. ORDER BY column_name1, column_name2