首頁 >資料庫 >mysql教程 >MySQL 排序

MySQL 排序

巴扎黑
巴扎黑原創
2016-12-19 11:12:581397瀏覽

如果需要對讀取的資料進行排序,就可以使用 MySQL 的 ORDER BY 子句來設定你想按哪個欄位哪種方式來進行排序,再返回搜尋結果。

以下是SQL SELECT 語句使用ORDER BY 子句將查詢資料排序後再回傳資料:

SELECT field1, field2,...fieldN table_name1, table_name2...ORDER BY field1,[field2...][ASC [DESC]]

可以使用任何欄位作為排序的條件,從而傳回排序後的查詢結果。

可以設定多個欄位來排序。

可以使用 ASC 或 DESC 關鍵字來設定查詢結果是按升序或降序排列。 預設情況下,是按升序排列。

可以加入 WHERE...LIKE 子句來設定條件。

在命令提示字元中使用ORDER BY 子句

以下將在SQL SELECT 語句中使用ORDER BY 子句來讀取MySQL 資料表runoob_tbl 中的資料:

嘗試下列實例,結果會按升序排列

MariaDB [RUNOOB]> SELECT * 從 runoob_tbl ORDER BY runoob_author ASC;

+-----------+--------------+------- --------+-----------------+
| runoob_id | runoob_title | runoob_author | submission_date |
+----------- +--------------+---------------+-----------------+
|         2 | Learn MySQL  | Abdul S       | 2016-11-26      |
|    6      |
|         1 | Learn PHP    | John Poul     | 2016-11-26      |
+-- ---------+--------------+---------------+--------- --------+
3 rows in set (0.00 sec)

MariaDB [RUNOOB]> SELECT * 從 runoob_tbl ORDER BY runoob_author DESC;
+-----------+-- ------------+---------------+-----------------+
| runoob_id | runoob_title | runoob_author | submission_date |
+-----------+--------------+-------------- -+-----------------+
|         1 | Learn PHP    | John Poul     | 2016-11-26      |
|     11-26      |
|         2 | Learn MySQL  | Abdul S       | 2016-11-26      |
+-----------+----------+----- ----------+-----------------+
3 rows in set (0.00 sec)

讀取runoob_tbl 表中所有資料並按runoob_author 欄位的升序排列。

在PHP腳本中使用 ORDER BY 子句

可以使用PHP函數的mysql_query()及SQL SELECT 帶上 ORDER BY 子句的指令來取得資料。 函數用於執行SQL指令,然後透過 PHP 函數 mysql_fetch_array() 來輸出所有查詢的資料。

實例

嘗試以下實例,查詢後的資料按 runoob_author 欄位的降序排列後傳回。

$dbhost ='localhost:3036';

$dbuser ='root';

$dbpass ='rootpassword';

$conn = mysql_nect(pdbdb ;

if(! $conn )

{

die('Could not connect: '. mysql_error());

}

$sql ='SELECT run

  runoob_author, submission_date

       FROM runoob_tbl

       ORDER BY  runoob_author DESC';

mysql_select_db('RUNOOB');

{

die(' Could not get data: '. mysql_error());

}

while($row = mysql_fetch_array($retval, MYSQL_ASSOC))

{

. br> ".

"Title: {$row['runoob_title']}
".

"Author: {$row['runoob_author']}
".

"Submission Date : {$ row['submission_date']}
".

"--------------------------------
";

}

echo "Fetched data successfullyn";

mysql_close($conn);

?>

運行結果

?>

運行結果

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn