PHP MySQL の注文方法
PHP MySQL Order By キーワード
ORDER BY キーワードは、レコード セット內(nèi)のデータを並べ替えるのに使用されます。
ORDER BY キーワード
ORDER BY キーワードは、レコード セット內(nèi)のデータを並べ替えるのに使用されます。
ORDER BY キーワードは、デフォルトでレコードを昇順に並べ替えます。
降順に並べ替えたい場合は、DESCキーワードを使用します。
構(gòu)文
SELECT 列名
FROM テーブル名
ORDER BY 列名(s) ASC|DESC
GROUP BY の使用法は次のとおりです:
GROUP BY の最大の役割は、以下と連攜することです。 COUNT
SELECT city, COUNT(city) FROM cv GROUP BY city;
を使用すると、どのフィールドを COUNT する前に、各都市の履歴書の數(shù)をカウントすることができます。必ず注意してください。
LIMITの使い方の簡単な紹介:
SELECTcol_name FROM tbl_name LIMIT offset, rows;
?offset: 條件を満たすすべてのレコードからデータのフェッチを開始します?rows: フェッチするデータの數(shù)
1番目のレコード(0)から5つのレコードを取得します
SELECT * FROM cv LIMIT 5;
SELECT * FROM cv LIMIT 0, 5;
6番目のレコード(5)から5つのレコードを取得します
SELECT * FROM cv LIMIT 5, 5;
ちなみに、having の使用法:
having は、グループ化された結(jié)果を再フィルタリングするために group by の後にのみ使用できます
SELECT city, COUNT(city ) FROM cv GROUP BY city HAVING COUNT(city) > 2;
上記のステートメントは、最初に都市ごとにグループ化が行われ、その後、グループ化された結(jié)果が數(shù)値が 2 を超える條件によってフィルターされることを示しています
なぜなら、HAVING で使用されるフィールドは、SELECT のクエリ結(jié)果に含まれるフィールドである必要があるためです。つまり、前のステートメントでは、市區(qū)町村フィールドのみを HAVING のフィルタリング條件として使用できます。他のフィールドが使用されている場合は、不明なフィールドが表示されます
SELECT name FROM cv WHERE age > 20 GROUP BY city
は、まず年齢 > 20 の條件に従って実行され、次にクエリ結(jié)果がグループ化されます
2 つの違いは、順序が異なることです。最初にデータをフィルタリングし、グループ化された結(jié)果をフィルタリングします
次の例では、「人」テーブルに保存されているすべてのデータを選択し、「年齢」に基づいて結(jié)果を列ごとに並べ替えます:
<?php $con=mysqli_connect("localhost","username","password","database"); // 檢測連接 if (mysqli_connect_errno()) { echo "連接失敗: " . mysqli_connect_error(); } $result = mysqli_query($con,"SELECT * FROM Persons ORDER BY age"); while($row = mysqli_fetch_array($result)) { echo $row['FirstName']; echo " " . $row['LastName']; echo " " . $row['Age']; echo "<br>"; } mysqli_close($con); ?>
上記の結(jié)果は出力されます:
Glenn Quagmire 33
Peter Griffin 35
2つの列に基づいて並べ替え
複數(shù)の列に基づいて並べ替えることができます。複數(shù)の列で並べ替える場合、最初の列の値が同じ場合にのみ 2 番目の列が使用されます。