Câu Lệnh Order By Và Limit Trong MySQL Với Python - Góc Học IT
Có thể bạn quan tâm
Để học tốt bài này, các bạn cần phải biết cách insert dữ liệu vào table trong MySQL với Python. Các bạn có thể đọc lại bài Thêm (insert) và xóa (delete) dữ liệu trong MySQL với Python để biết cách insert dữ liệu vào table trong MySQL.
Lưu ý, chúng ta đang sử dụng MySQL được tích hợp sẵn trong XAMPP. Các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách cài đặt XAMPP và khởi chạy MySQL.
Các ví dụ order by và limit dữ liệu sẽ thực hiện trên table gochocit_posts trong database gochocit. Database và table này đã được tạo trong bài Tạo database và tạo table trong MySQL với Python. Các bạn cần đọc lại để xem cấu trúc của database và dữ liệu của table trên.

1. Câu lệnh order by trong MySQL
Câu lệnh "ORDER BY" giúp sắp xếp kết quả SELECT được theo thứ tự tăng dần (ascending) hoặc giảm dần (descending).import mysql.connector # create connection to MySQL mydb = mysql.connector.connect( host="localhost", user="root", password="", database = "gochocit" ) mycursor = mydb.cursor() sql = "SELECT * FROM gochocit_posts ORDER BY ID" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x) # disconnect from MySQL mydb.close()
Kết quả
(1, 'Vinh Lê', 'Đây là bài số 1', 'Nội dung bài số 1', datetime.datetime(2022, 3, 27, 19, 46, 5)) (2, 'Vinh Lê', 'Đây là bài số 2', 'Nội dung bài số 2', datetime.datetime(2022, 3, 27, 19, 47, 6)) (3, 'Vinh Lê', 'Đây là bài số 3', 'Nội dung bài số 3', datetime.datetime(2022, 3, 27, 19, 48, 7)) (4, 'Vinh Lê', 'Đây là bài số 4', 'Nội dung bài số 4', datetime.datetime(2022, 3, 27, 19, 49, 8)) (5, 'Vinh Lê', 'Đây là bài số 5', 'Nội dung bài số 5', datetime.datetime(2022, 3, 27, 19, 50, 9))Trong ví dụ trên, chúng ta sắp xếp kết quả SELECT được theo thứ tự tăng dần của ID. Mặc định, "ORDER BY" sẽ sắp xếp kết quả SELECT được tăng dần (ASC). Để sắp xếp kết quả giảm dần, chúng ta sử dụng từ khóa DESC.import mysql.connector # create connection to MySQL mydb = mysql.connector.connect( host="localhost", user="root", password="", database = "gochocit" ) mycursor = mydb.cursor() sql = "SELECT * FROM gochocit_posts ORDER BY ID DESC" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x) # disconnect from MySQL mydb.close()
Kết quả
(5, 'Vinh Lê', 'Đây là bài số 5', 'Nội dung bài số 5', datetime.datetime(2022, 3, 27, 19, 50, 9)) (4, 'Vinh Lê', 'Đây là bài số 4', 'Nội dung bài số 4', datetime.datetime(2022, 3, 27, 19, 49, 8)) (3, 'Vinh Lê', 'Đây là bài số 3', 'Nội dung bài số 3', datetime.datetime(2022, 3, 27, 19, 48, 7)) (2, 'Vinh Lê', 'Đây là bài số 2', 'Nội dung bài số 2', datetime.datetime(2022, 3, 27, 19, 47, 6)) (1, 'Vinh Lê', 'Đây là bài số 1', 'Nội dung bài số 1', datetime.datetime(2022, 3, 27, 19, 46, 5))2. Câu lệnh limit trong MySQL
Chúng ta có thể giới hạn số dòng dữ liệu được lấy ra khi truy vấn (SELECT) bằng câu lệnh "LIMIT".import mysql.connector # create connection to MySQL mydb = mysql.connector.connect( host="localhost", user="root", password="", database = "gochocit" ) mycursor = mydb.cursor() sql = "SELECT * FROM gochocit_posts LIMIT 3" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x) # disconnect from MySQL mydb.close()
Kết quả
(1, 'Vinh Lê', 'Đây là bài số 1', 'Nội dung bài số 1', datetime.datetime(2022, 3, 27, 19, 46, 5)) (2, 'Vinh Lê', 'Đây là bài số 2', 'Nội dung bài số 2', datetime.datetime(2022, 3, 27, 19, 47, 6)) (3, 'Vinh Lê', 'Đây là bài số 3', 'Nội dung bài số 3', datetime.datetime(2022, 3, 27, 19, 48, 7))Trong ví dụ trên, chúng ta lấy ra 3 dòng dữ liệu đầu tiên với LIMIT 3. Chúng ta có thể chọn vị trí dòng dữ liệu bắt đầu được lấy ra với từ khóa "OFFSET".import mysql.connector # create connection to MySQL mydb = mysql.connector.connect( host="localhost", user="root", password="", database = "gochocit" ) mycursor = mydb.cursor() sql = "SELECT * FROM gochocit_posts LIMIT 3 OFFSET 2" mycursor.execute(sql) myresult = mycursor.fetchall() for x in myresult: print(x) # disconnect from MySQL mydb.close()
Kết quả
(3, 'Vinh Lê', 'Đây là bài số 3', 'Nội dung bài số 3', datetime.datetime(2022, 3, 27, 19, 48, 7)) (4, 'Vinh Lê', 'Đây là bài số 4', 'Nội dung bài số 4', datetime.datetime(2022, 3, 27, 19, 49, 8)) (5, 'Vinh Lê', 'Đây là bài số 5', 'Nội dung bài số 5', datetime.datetime(2022, 3, 27, 19, 50, 9))Trong ví dụ trên, chúng ta lấy 3 dòng dữ liệu bắt đầu từ dòng dữ liệu thứ 3 đến 5 với LIMIT 3 OFFSET 2.
- Cài đặt Python và môi trường lập trình với Visual Studio Code
- Tìm tất cả các ước số của một số nguyên trong C++
- Chỉ định truy cập (access modifier) của thành viên thuộc lớp trong Java
- Các thao tác trên thư mục (directory) với Python
- Các thao tác cơ bản trên danh sách liên kết đơn (Singly Linked List)
Từ khóa » Cách Dùng Limit Trong Mysql
-
Mệnh đề LIMIT Trong MySQL - Học MySQL Online - Viettuts
-
Giới Hạn Kết Quả Trả Về Với LIMIT Trong MySQL
-
Mệnh đề LIMIT Trong MySQL
-
LIMIT Giới Hạn Kết Quả Trong SQL
-
HƯỚNG DẪN VỀ LỆNH LIMIT VÀ OFFSET TRONG MySQL
-
(LIMIT) Giới Hạn Số Lượng Kết Quả Trả Về Trong MySQL - Web Cơ Bản
-
Giới Hạn (LIMIT) Số Lượng Kết Quả Trả Về Trong MySQL - Web Cơ Bản
-
Mệnh đề Limit Trong MySQL - Lập Trình Từ Đầu
-
Mệnh đề LIMIT | MySQL & PHP
-
Lệnh Limit Trong Mysql Giới Hạn Kết Quả Trả Về | VietPro
-
Giới Hạn Kết Quả Trả Về Với LIMIT Trong MySQL - Vi
-
Câu Lệnh Order By Và Limit Trong MySQL Với PHP - Góc Học IT
-
Giới Hạn Lựa Chọn Dữ Liệu Với Mệnh đề LIMIT Trong MySQL
-
[MySQL 20] MySQL LIMIT & OFFSET With Examples - Code Lean