読み取ったデータを並べ替える必要がある場合は、MySQL の ORDER BY 句を使用して並べ替えるフィールドを設定し、検索結果を返すことができます。
以下は、データを返す前に ORDER BY 句を使用してクエリ データを並べ替える SQL SELECT ステートメントです:
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 * from runoob_tbl ORDER BY runoob_author ASC;
+-----------+--------------+-- ---- ----------+-----------------+
| runoob_title |
+---- ------ -+--------------+---------------+---------- ------- +
| アブドゥル S | 2016-11-26 |
| PHP を学ぶ11-26 |
+- ----------+--------------+--------------+-- ------ ----------+
3 行セット (0.00 秒)
MariaDB [RUNOOB]> SELECT * from runoob_tbl ORDER BY runoob_author DESC;
+----- ----------+ ---------------+--------------+--------------- -----+
| runoob_title |
+----------+--------------+----- ------- ---+-----------------+
| PHP を学ぶ | 2016-11-26 |
| | Cakin24 | 2016-11-26 |
| アブドゥル S を学ぶ |
---+--- ------------+-------------------+
3 行セット (0.00 秒)
ORDER BY runoob_author DESC';
mysql_select_db('RUNOOB');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die(そうではないデータを取得: '.mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
echo "チュートリアル ID :{$row['runoob_id']}
"タイトル: {$row['runoob_title']}
".
"著者: {$row['runoob_author']}
$row['提出日']}
".
"-------------------------------- - -
";
}
echo "データを正常に取得しましたn";
mysql_close($conn);
?>
実行結果