পিএইচপি মাইএসকিউএল অর্ডার বাই (MySQL Order By)

পিএইচপি মাইএসকিউএল (MySQL Database) - পিএইচপি প্রোগ্রামিং (PHP Programming) - Computer Programming

280

PHP MySQL ORDER BY হল একটি SQL স্টেটমেন্ট যা ডেটাবেস থেকে রেকর্ডগুলিকে সাজানোর জন্য ব্যবহৃত হয়। ORDER BY ক্লজের মাধ্যমে আপনি ডেটা ascending (ASC) বা descending (DESC) অর্ডারে সাজাতে পারেন।

MySQL ORDER BY ক্লজের ব্যবহার:

ORDER BY ক্লজটি SELECT স্টেটমেন্টে ব্যবহার করা হয় এবং এটি ডেটা সাজানোর জন্য নির্দিষ্ট কলাম ব্যবহার করে। এটি ASC (ascending) বা DESC (descending) নির্দিষ্ট করতে পারে, যার মাধ্যমে আপনি সাজানোর ক্রম ঠিক করতে পারবেন।

MySQL ORDER BY Syntax:

SELECT column1, column2, ...
FROM table_name
ORDER BY column_name [ASC | DESC];
  • ASC: Ascending order (ডিফল্ট)। এটি ছোট থেকে বড় সংখ্যা বা ছোট থেকে বড় অক্ষর অনুযায়ী সাজায়।
  • DESC: Descending order। এটি বড় থেকে ছোট সংখ্যা বা বড় থেকে ছোট অক্ষর অনুযায়ী সাজায়।

PHP MySQL ORDER BY উদাহরণ:

ধরা যাক, আপনার একটি users টেবিল রয়েছে, যেখানে id, name, এবং age কলাম রয়েছে। আপনি age কলামের ভিত্তিতে ডেটা সাজাতে চান।

১. ASCENDING ORDER (ছোট থেকে বড়):

connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// "age" কলাম অনুযায়ী ascending অর্ডারে ডেটা নির্বাচন করুন
$sql = "SELECT id, name, age FROM users ORDER BY age ASC";
$result = $conn->query($sql);

// ডেটা আউটপুট করুন
if ($result->num_rows > 0) {
    // প্রতিটি রেকর্ডের জন্য লুপ করুন
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Age: " . $row["age"]. "
"; } } else { echo "0 results"; } $conn->close(); ?>

ব্যাখ্যা:

  • ORDER BY age ASC: age কলামের মান অনুযায়ী রেকর্ডগুলো ascending অর্ডারে সাজানো হচ্ছে (ছোট থেকে বড়)।

২. DESCENDING ORDER (বড় থেকে ছোট):

connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// "age" কলাম অনুযায়ী descending অর্ডারে ডেটা নির্বাচন করুন
$sql = "SELECT id, name, age FROM users ORDER BY age DESC";
$result = $conn->query($sql);

// ডেটা আউটপুট করুন
if ($result->num_rows > 0) {
    // প্রতিটি রেকর্ডের জন্য লুপ করুন
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Age: " . $row["age"]. "
"; } } else { echo "0 results"; } $conn->close(); ?>

ব্যাখ্যা:

  • ORDER BY age DESC: age কলামের মান অনুযায়ী রেকর্ডগুলো descending অর্ডারে সাজানো হচ্ছে (বড় থেকে ছোট)।

৩. একাধিক কলামের ভিত্তিতে সাজানো:

আপনি একাধিক কলাম ব্যবহার করে সাজাতে পারেন। ধরুন, আপনি প্রথমে age কলাম অনুযায়ী সাজাতে চান এবং তারপর name কলাম অনুযায়ী সাজাতে চান।

connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// "age" অনুযায়ী ascending এবং "name" অনুযায়ী ascending অর্ডারে সাজানো
$sql = "SELECT id, name, age FROM users ORDER BY age ASC, name ASC";
$result = $conn->query($sql);

// ডেটা আউটপুট করুন
if ($result->num_rows > 0) {
    // প্রতিটি রেকর্ডের জন্য লুপ করুন
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Age: " . $row["age"]. "
"; } } else { echo "0 results"; } $conn->close(); ?>

ব্যাখ্যা:

  • ORDER BY age ASC, name ASC: প্রথমে age কলাম অনুযায়ী ascending অর্ডারে সাজানো হবে, এবং যদি দুটি age সমান হয়, তাহলে সেগুলো name কলাম অনুযায়ী ascending অর্ডারে সাজানো হবে।

৪. পিএইচপি PDO (PHP Data Objects) ব্যবহার করে ORDER BY:

setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    // "age" কলামের ভিত্তিতে descending অর্ডারে ডেটা নির্বাচন করুন
    $sql = "SELECT id, name, age FROM users ORDER BY age DESC";
    $stmt = $conn->prepare($sql);
    $stmt->execute();

    // ডেটা আউটপুট করুন
    $result = $stmt->fetchAll();
    foreach($result as $row) {
        echo "id: " . $row['id'] . " - Name: " . $row['name'] . " - Age: " . $row['age'] . "
"; } } catch(PDOException $e) { echo "Error: " . $e->getMessage(); } $conn = null; ?>

ব্যাখ্যা:

  • এখানে PDO ব্যবহার করে একই কাজ করা হয়েছে। prepare() মেথডের মাধ্যমে SQL স্টেটমেন্ট প্রস্তুত করা হয়, এবং তারপর execute() এর মাধ্যমে সেটি রান করা হয়।

সারসংক্ষেপ:

MySQL ORDER BY হল একটি শক্তিশালী টুল যা আপনাকে ডেটাবেসের ডেটা সাজানোর জন্য ব্যবহৃত হয়। আপনি ascending (ASC) বা descending (DESC) অর্ডারে ডেটা সাজাতে পারেন এবং একাধিক কলাম দিয়ে সাজানোর জন্য এটি ব্যবহার করতে পারেন। PHP এর মাধ্যমে MySQL ORDER BY ব্যবহার করে আপনি ডেটাকে আপনার প্রয়োজন অনুযায়ী সাজাতে পারেন এবং ডেটাবেস থেকে প্রাপ্ত তথ্য ব্যবহারকারীর কাছে সুন্দরভাবে প্রদর্শন করতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...