📅  最后修改于: 2020-11-27 06:36:32             🧑  作者: Mango
我们已经看到了SQL SELECT命令从MySQL表中获取数据。当您选择行时,MySQL服务器可以自由以任何顺序返回它们,除非您通过说出如何对结果排序来另外指示。但是,您可以通过添加一个ORDER BY子句对结果集进行排序,该子句为要排序的一个或多个列命名。
以下代码块是SELECT命令的通用SQL语法,以及用于对MySQL表中的数据进行排序的ORDER BY子句。
SELECT field1, field2,...fieldN table_name1, table_name2...
ORDER BY field1, [field2...] [ASC [DESC]]
如果列出了该字段,则可以在任何字段上对返回的结果进行排序。
您可以在多个字段上对结果进行排序。
您可以使用关键字ASC或DESC来获得结果的升序或降序。默认情况下,这是升序。
您可以按常规方式使用WHERE … LIKE子句来放置条件。
这将使用带有SELECT ORDER BY子句的SQL SELECT命令从MySQL表– tutorials_tbl中获取数据。
尝试以下示例,该示例以升序返回结果。
root@host# mysql -u root -p password;
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> SELECT * from tutorials_tbl ORDER BY tutorial_author ASC
+-------------+----------------+-----------------+-----------------+
| tutorial_id | tutorial_title | tutorial_author | submission_date |
+-------------+----------------+-----------------+-----------------+
| 2 | Learn MySQL | Abdul S | 2007-05-24 |
| 1 | Learn PHP | John Poul | 2007-05-24 |
| 3 | JAVA Tutorial | Sanjay | 2007-05-06 |
+-------------+----------------+-----------------+-----------------+
3 rows in set (0.42 sec)
mysql>
验证以升序列出的所有作者姓名。
您可以在PHP函数mysql_query()中使用类似ORDER BY子句的语法。该函数用于执行SQL命令,以后可以使用另一个PHP函数mysql_fetch_array()来获取所有选定的数据。
尝试以下示例,该示例按教程作者的降序返回结果。
".
"Title: {$row['tutorial_title']}
".
"Author: {$row['tutorial_author']}
".
"Submission Date : {$row['submission_date']}
".
"--------------------------------
";
}
echo "Fetched data successfully\n";
mysql_close($conn);
?>