首頁 >後端開發 >php教程 >PHP中如何使用MySQL的ORDER BY子句排序

PHP中如何使用MySQL的ORDER BY子句排序

青灯夜游
青灯夜游原創
2019-01-14 18:15:043797瀏覽

在MySQL中,ORDER BY子句可與SELECT語句一起使用,以便按順序對特定欄位的資料進行排序;它可以按升序或降序對結果集進行排序。下面我們來帶大家簡單了解一下在PHP中使用MySQL的ORDER BY子句排序的基本方法,希望對大家有幫助。

PHP中如何使用MySQL的ORDER BY子句排序

#基本語法

ORDER BY子句的基本語法:

SELECT  字段名 FROM 表名 ORDER BY 字段名 ASC/DESC(升序或降序)

註:在ORDER BY子句中ASC是預設的,可省略,表示升序。 【相關影片教學推薦:MySQL影片教學


PHP中如何使用MySQL的ORDER BY子句排序使用範例

下面是一個資料表"demo",其中包含三個字段,分別為:name、age、sex。我們透過簡單的範例來介紹ORDER BY子句的使用。

PHP中如何使用MySQL的ORDER BY子句排序

1、簡單的依照age欄位升序排序

<?php
header("content-type:text/html;charset=utf-8");
$link = mysqli_connect("localhost", "root", "", "mydb"); //连接数据库
mysqli_set_charset($link,"utf8");
if($link === false){ 
    die("ERROR: Could not connect. "  
                . mysqli_connect_error()); 
} 
  
$sql = "SELECT * FROM demo ORDER BY age"; 
if($res = mysqli_query($link, $sql)){ 
    if(mysqli_num_rows($res) > 0){ 
        echo "<table>"; 
            echo "<tr>"; 
            echo "<th>name</th>"; 
            echo "<th>age</th>"; 
            echo "<th>sex</th>"; 
            echo "</tr>"; 
        while($row = mysqli_fetch_array($res)){ 
            echo "<tr>"; 
                echo "<td>" . $row[&#39;name&#39;] . "</td>"; 
                echo "<td>" . $row[&#39;age&#39;] . "</td>"; 
                echo "<td>" . $row[&#39;sex&#39;] . "</td>"; 
            echo "</tr>"; 
        } 
        echo "</table>"; 
        mysqli_free_result($res); 
    } else{ 
        echo "找不到匹配的记录。"; 
    } 
} else{ 
    echo "错误:无法执行 $sql. " . mysqli_error($link); 
} 
mysqli_close($link); 
?>

輸出:

程式碼說明:

「res」變數儲存函數mysql_query()傳回的資料。

每次呼叫mysqli_fetch_array()時,它都會從res()集傳回下一行。

while迴圈用於遍歷表「demo」的所有行。 PHP中如何使用MySQL的ORDER BY子句排序

2、使用物件導向方法透過ORDER BY子句降序排序

###
<?php
header("content-type:text/html;charset=utf-8");
$link = new mysqli("localhost", "root", "", "mydb"); 
mysqli_set_charset($link,"utf8");
if($link === false){ 
    die("ERROR: Could not connect. "  
                . mysqli_connect_error()); 
} 
  
$sql = "SELECT * FROM demo ORDER BY age DESC"; 
if($res = mysqli_query($link, $sql)){ 
    if(mysqli_num_rows($res) > 0){ 
        echo "<table>"; 
            echo "<tr>"; 
            echo "<th>name</th>"; 
            echo "<th>age</th>"; 
            echo "<th>sex</th>"; 
            echo "</tr>"; 
        while($row = mysqli_fetch_array($res)){ 
            echo "<tr>"; 
                echo "<td>" . $row[&#39;name&#39;] . "</td>"; 
                echo "<td>" . $row[&#39;age&#39;] . "</td>"; 
                echo "<td>" . $row[&#39;sex&#39;] . "</td>"; 
            echo "</tr>"; 
        } 
        echo "</table>"; 
        mysqli_free_result($res); 
    } else{ 
        echo "找不到匹配的记录。"; 
    } 
} else{ 
    echo "错误:无法执行 $sql. "  . mysqli_error($link); 
} 
mysqli_close($link); 
?>
###輸出:##############以上就是本篇文章的全部內容,希望能對大家的學習有所幫助。更多精彩內容大家可以追蹤php中文網相關教學欄位! ! ! ###

以上是PHP中如何使用MySQL的ORDER BY子句排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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