PHP MySQL Order By キーワード

ORDER BYキーワードは、レコードセット内のデータをソートするために使用されます。

ORDER BYキーワード

ORDER BYキーワードは、レコードセット内のデータをソートするために使用されます。

文法

SELECT column_name(s)
FROM table_name
ORDER BY column_name

注記:SQLは大文字小文字を区別しません。ORDER BYとorder byは同等です。

以下の例では、"Persons"テーブルに保存されているすべてのデータを選択し、"Age"カラムに基づいて結果をソートします:

<?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 Persons 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

昇順または降順のソート

ORDER BY キーワードを使用する場合、デフォルトの記録集のソート順序は昇順です(1 は 9 より前に、"a" は "p" より前に):

降順ソートを設定するには、DESC キーワードを使用してください(9 は 1 より前に、"p" は "a" より前に):

SELECT column_name(s)
FROM table_name
ORDER BY column_name DESC

2つの列に基づいてソート

複数の列に基づいてソートできます。複数の列に基づいてソートする場合、最初の列が同じ場合にのみ第二列を使用します:

SELECT column_name(s)
FROM table_name
ORDER BY column_name1, column_name2