MARIADB
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Mệnh đề ORDER BY trong MariaDB

Mệnh đề ORDER BY trong MariaDB được sử dụng để sắp xếp kết quả của các câu truy vấn theo thứ tự tăng dần (ASC) hoặc giảm dần (DESC) dựa trên các cột cụ thể. Nếu không chỉ định thứ tự, mặc định sẽ là sắp xếp tăng dần (ASC). Mệnh đề này có thể được áp dụng cho nhiều loại câu lệnh như SELECT, DELETE, UPDATE, giúp tổ chức và hiển thị dữ liệu một cách trực quan hơn.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Điểm cần lưu ý:

  • ORDER BY luôn được đặt ở cuối câu truy vấn, không xuất hiện trong các truy vấn con (subquery) hoặc trước các hàm tổng hợp (aggregate functions).
  • Không thể sử dụng chỉ số cột (kiểu số nguyên) để thay thế tên cột trong ORDER BY.
  • Có thể sắp xếp dựa trên một hoặc nhiều cột cùng lúc.

Cú pháp cơ bản của mệnh đề ORDER BY trong MariaDB

SELECT field, field2,... 
FROM table_name 
ORDER BY field [ASC|DESC];

Ví dụ minh họa

Tại cửa sổ lệnh Command Prompt

Truy vấn đơn giản sắp xếp theo thứ tự tăng dần tên nhà sản xuất:

root@host# mysql -u root -p password;
Enter password:*******
mysql> use PRODUCTS;
Database changed;

mysql> SELECT * FROM products_tbl ORDER BY product_manufacturer ASC;
+-------------+----------------+----------------------+
| ID_number   | Nomenclature   | product_manufacturer |
+-------------+----------------+----------------------+
| 56789       | SuperBlast 400 | LMN Corp             |
| 67891       | Zoomzoom 5000  | QFT Corp             |
| 12347       | Orbitron 1000  | XYZ Corp             |
+-------------+----------------+----------------------+

Trong ví dụ này:

Bài viết này được đăng tại [free tuts .net]

  • Cột product_manufacturer được sắp xếp theo thứ tự bảng chữ cái tăng dần (ASC).
  • Các cột khác giữ nguyên giá trị, nhưng thứ tự các hàng thay đổi theo yêu cầu.

Sử dụng mã PHP để áp dụng mệnh đề ORDER BY trong MariaDB

Trong một ứng dụng PHP, bạn có thể sử dụng câu lệnh SQL như sau:

<?php
   $dbhost = 'localhost:3036';
   $dbuser = 'root';
   $dbpass = 'rootpassword';
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);

   if(! $conn ) {
      die('Không thể kết nối: ' . mysql_error());
   }

   $sql = 'SELECT product_id, product_name, product_manufacturer, ship_date 
      FROM products_tbl ORDER BY product_manufacturer DESC';

   mysql_select_db('PRODUCTS');
   $retval = mysql_query( $sql, $conn );

   if(! $retval ) {
      die('Không thể lấy dữ liệu: ' . mysql_error());
   }

   while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) {
      echo "Mã sản phẩm: {$row['product_id']} <br> ".
           "Tên sản phẩm: {$row['product_name']} <br> ".
           "Nhà sản xuất: {$row['product_manufacturer']} <br> ".
           "Ngày giao hàng: {$row['ship_date']} <br> ".
           "--------------------------------<br>";
   }

   echo "Dữ liệu đã được truy xuất thành công\n";
   mysql_close($conn);
?>

Kết quả đầu ra:

Sau khi thực hiện truy vấn sắp xếp giảm dần (DESC) tên nhà sản xuất, kết quả trả về như sau:

Mã sản phẩm: 12347
Tên sản phẩm: Orbitron 1000
Nhà sản xuất: XYZ Corp
Ngày giao hàng: 01/01/17
--------------------------------
Mã sản phẩm: 67891
Tên sản phẩm: Zoomzoom 5000
Nhà sản xuất: QFT Corp
Ngày giao hàng: 01/01/17
--------------------------------
Mã sản phẩm: 56789
Tên sản phẩm: SuperBlast 400
Nhà sản xuất: LMN Corp
Ngày giao hàng: 01/04/17
--------------------------------
Dữ liệu đã được truy xuất thành công

Kết bài

Mệnh đề ORDER BY giúp tối ưu hóa việc sắp xếp dữ liệu theo nhu cầu cụ thể, hỗ trợ cải thiện trải nghiệm người dùng khi xem hoặc quản lý dữ liệu. Việc kết hợp ORDER BY với các điều kiện lọc khác (như WHERE) còn tăng tính linh hoạt, phù hợp với nhiều tình huống truy vấn phức tạp trong thực tế.

Cùng chuyên mục:

Biểu thức chính quy (Regular Expression) trong MariaDB

Biểu thức chính quy (Regular Expression) trong MariaDB

Quản lý dữ liệu trùng lặp trong MariaDB

Quản lý dữ liệu trùng lặp trong MariaDB

Dãy số (Sequences) trong MariaDB

Dãy số (Sequences) trong MariaDB

Table Cloning trong MariaDB

Table Cloning trong MariaDB

Bảng tạm (Temporary Tables) trong MariaDB

Bảng tạm (Temporary Tables) trong MariaDB

Indexes & Statistics Tables trong MariaDB

Indexes & Statistics Tables trong MariaDB

Alter Command trong MariaDB

Alter Command trong MariaDB

Transactions trong MariaDB

Transactions trong MariaDB

Biểu thức chính quy trong MariaDB

Biểu thức chính quy trong MariaDB

Giá trị NULL trong MariaDB

Giá trị NULL trong MariaDB

Mệnh đề JOIN trong MariaDB

Mệnh đề JOIN trong MariaDB

Mệnh đề ORDER BY trong MariaDB

Mệnh đề ORDER BY trong MariaDB

Mệnh đề LIKE trong MariaDB

Mệnh đề LIKE trong MariaDB

Câu lệnh DELETE trong MariaDB

Câu lệnh DELETE trong MariaDB

Câu lệnh UPDATE trong MariaDB

Câu lệnh UPDATE trong MariaDB

Mệnh đề WHERE trong MariaDB

Mệnh đề WHERE trong MariaDB

Các kiểu dữ liệu (Data Types) trong MariaDB

Các kiểu dữ liệu (Data Types) trong MariaDB

Tìm hiểu Select Database trong MariaDB

Tìm hiểu Select Database trong MariaDB

Xóa cơ sở dữ liệu trong MariaDB

Xóa cơ sở dữ liệu trong MariaDB

Tạo cơ sở dữ liệu (Database) trong MariaDB

Tạo cơ sở dữ liệu (Database) trong MariaDB

Top