PHP MySQL क्लॉज द्वारा ऑर्डर का प्रयोग करें
MySQL डेटाबेस से डेटा चुनें और ऑर्डर करें
ORDER BY क्लॉज का उपयोग परिणाम-सेट को आरोही या अवरोही क्रम में क्रमबद्ध करने के लिए किया जाता है।
ORDER BY क्लॉज डिफ़ॉल्ट रूप से रिकॉर्ड्स को आरोही क्रम में सॉर्ट करता है। अभिलेखों को अवरोही क्रम में क्रमबद्ध करने के लिए, डीईएससी कीवर्ड का उपयोग करें।
SELECT column_name(s)
FROM table_name ORDER BY column_name(s) ASC|DESC
SQL के बारे में अधिक जानने के लिए, कृपया हमारे SQL ट्यूटोरियल पर जाएँ ।
MySQLi के साथ डेटा चुनें और ऑर्डर करें
निम्न उदाहरण MyGuests तालिका से आईडी, प्रथम नाम और अंतिम नाम कॉलम का चयन करता है। अंतिम नाम कॉलम द्वारा रिकॉर्ड का आदेश दिया जाएगा:
उदाहरण (MySQLi ऑब्जेक्ट-ओरिएंटेड)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT id, firstname, lastname FROM MyGuests ORDER BY lastname";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 results";
}
$conn->close();
?>
उपरोक्त उदाहरण से समझाने के लिए कोड लाइनें:
सबसे पहले, हम SQL क्वेरी सेट करते हैं जो MyGuests तालिका से आईडी, प्रथम नाम और अंतिम नाम कॉलम का चयन करती है। रिकॉर्ड्स को लास्टनाम कॉलम द्वारा ऑर्डर किया जाएगा। कोड की अगली पंक्ति क्वेरी चलाती है और परिणामी डेटा को $result नामक एक चर में डालती है।
फिर, function num_rows()
चेक करता है कि क्या शून्य से अधिक पंक्तियाँ वापस आ गई हैं।
यदि शून्य से अधिक पंक्तियाँ वापस आती हैं, तो फ़ंक्शन fetch_assoc()
सभी परिणामों को एक साहचर्य सरणी में रखता है जिसे हम लूप कर सकते हैं। while()
लूप परिणाम सेट के माध्यम से लूप करता है और आईडी, प्रथम नाम और अंतिम नाम कॉलम से डेटा आउटपुट करता है ।
निम्न उदाहरण MySQLi प्रक्रियात्मक तरीके से ऊपर दिए गए उदाहरण के समान दिखाता है:
उदाहरण (MySQLi प्रक्रियात्मक)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "SELECT id, firstname, lastname FROM MyGuests
ORDER BY lastname";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 results";
}
mysqli_close($conn);
?>
आप परिणाम को HTML तालिका में भी डाल सकते हैं:
उदाहरण (MySQLi ऑब्जेक्ट-ओरिएंटेड)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT id, firstname, lastname FROM MyGuests ORDER BY lastname";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo "<table><tr><th>ID</th><th>Name</th></tr>";
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<tr><td>".$row["id"]."</td><td>".$row["firstname"]." ".$row["lastname"]."</td></tr>";
}
echo "</table>";
} else {
echo "0 results";
}
$conn->close();
?>
पीडीओ के साथ डेटा का चयन करें (+ तैयार विवरण)
निम्नलिखित उदाहरण तैयार कथनों का उपयोग करता है।
यहां हम MyGuests तालिका से आईडी, प्रथम नाम और अंतिम नाम कॉलम का चयन करते हैं। अभिलेखों को अंतिम नाम स्तंभ द्वारा क्रमित किया जाएगा, और यह एक HTML तालिका में प्रदर्शित किया जाएगा:
उदाहरण (पीडीओ)
<?php
echo "<table style='border: solid 1px black;'>";
echo "<tr><th>Id</th><th>Firstname</th><th>Lastname</th></tr>";
class TableRows extends RecursiveIteratorIterator {
function __construct($it) {
parent::__construct($it, self::LEAVES_ONLY);
}
function current() {
return "<td style='width:150px;border:1px solid black;'>" . parent::current(). "</td>";
}
function beginChildren() {
echo "<tr>";
}
function endChildren() {
echo "</tr>" . "\n";
}
}
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare("SELECT id, firstname, lastname FROM MyGuests
ORDER BY lastname");
$stmt->execute();
// set the resulting array to associative
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
echo $v;
}
} catch(PDOException $e) {
echo "Error: " . $e->getMessage();
}
$conn = null;
echo "</table>";
?>