The ORDER BY keyword is used to sort the data in a recordset.
--------------------------------------------------------------------------------
[color=FA0309]The ORDER BY Keyword[/color]
The ORDER BY keyword is used to sort the data in a recordset. [color=FA0309]Syntax[/color]
The following example selects all the data stored in the "Person" table, and sorts the result by the "Age" column:
If you use the ORDER BY keyword, the sort-order of the recordset is ascending by default (1 before 9 and "a" before "p"). Use the DESC keyword to specify a descending sort-order (9 before 1 and "p" before "a"):
It is possible to order by more than one column. When ordering by more than one column, the second column is only used if the values in the first column are identical:
The ORDER BY keyword is used to sort the data in a recordset. [color=FA0309]Syntax[/color]
SELECT column_name(s)
FROM table_name
ORDER BY column_name
Note: SQL statements are not case sensitive. ORDER BY is the same as order by.
[color=FA0309]Example[/color]FROM table_name
ORDER BY column_name
The following example selects all the data stored in the "Person" table, and sorts the result by the "Age" column:
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
} mysql_select_db("my_db", $con); $result = mysql_query("SELECT * FROM person ORDER BY age"); while($row = mysql_fetch_array($result))
{
echo $row['FirstName'];
echo " " . $row['LastName'];
echo " " . $row['Age'];
echo "<br />";
}mysql_close($con);
?>
The output of the code above will be:
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
} mysql_select_db("my_db", $con); $result = mysql_query("SELECT * FROM person ORDER BY age"); while($row = mysql_fetch_array($result))
{
echo $row['FirstName'];
echo " " . $row['LastName'];
echo " " . $row['Age'];
echo "<br />";
}mysql_close($con);
?>
Glenn Quagmire 33
Peter Griffin 35
--------------------------------------------------------------------------------
[color=FA0309]Sort Ascending or Descending[/color]Peter Griffin 35
If you use the ORDER BY keyword, the sort-order of the recordset is ascending by default (1 before 9 and "a" before "p"). Use the DESC keyword to specify a descending sort-order (9 before 1 and "p" before "a"):
SELECT column_name(s)
FROM table_name
ORDER BY column_name DESC
--------------------------------------------------------------------------------
[color=FA0309]Order by Two Columns[/color]FROM table_name
ORDER BY column_name DESC
It is possible to order by more than one column. When ordering by more than one column, the second column is only used if the values in the first column are identical:
SELECT column_name(s)
FROM table_name
ORDER BY column_name1, column_name2
FROM table_name
ORDER BY column_name1, column_name2