Thứ Tư, 27 Tháng Mười Một 2024
Trang chủPHP & MysqlMySQLCâu lệnh SELECT trong MySQL - Khi nào thì dùng lệnh SELECT

Câu lệnh SELECT trong MySQL – Khi nào thì dùng lệnh SELECT

Trong chuyên đề bài viết Học MySQL cơ bản, bài viết hôm nay chúng ta sẽ tìm hiểu về câu lệnh SELECT.

DANH SÁCH BÀI VIẾT
Mệnh đề FROM trong MySQL - truy vấn từ bảng nào
Lệnh DELETE trong MySQL - Lệnh xóa bản ghi
Câu lệnh INSERT INTO trong MySQL - Lệnh chèn dữ liệu vào bảng
Câu lệnh CREATE TABLE trong MySQL - Lệnh tạo bảng mới
Câu lệnh SELECT trong MySQL - Khi nào thì dùng lệnh SELECT

SELECT là lệnh truy vấn được dùng để lấy kết quả từ một hoặc nhiều bảng trong cơ sở dữ liệu của MySQL cũng như các ngôn ngữ SQL khác.

Ví dụ chúng ta đang có bảng user, chứa khoảng 1 triệu người dùng. Chúng ta muốn lấy ra 1 user, 10 user đầu tiên, hay lấy ra user có id hoặc thông tin như thế nào đó. Như vậy ta sẽ sử dụng tới lệnh SELECT và kèm với điều kiện để lấy ra được bản ghi mong muốn.

Cú pháp lệnh SELECT trong MySQL

Ở dạng cơ bản nhất, cú pháp của lệnh SELECT sẽ như sau:

SELECT “biểu thức”
 FROM “bảng”
 [WHERE “điều kiện”];

Trong đó:

  • biểu thức: Biểu thức này SQL sẽ dựa vào đó để lấy ra những cột nào trong bảng(ví dụ: SELECT id, name, phone), mỗi trường cách nhau bởi 1 dấu phẩy, hoặc SELECT * sẽ lấy tất cả các cột.
  • bảng: Ta lấy dữ liệu từ bảng nào, ví dụ FROM users thì ta đang lấy dữ liệu từ bảng users.
  • điều kiện: Điều kiện để lấy ra bản ghi phù hợp. Ví dụ WHERE id = 5 thì sẽ chỉ lấy ra bản ghi duy nhất có id 5. Hoặc WHERE id < 15 lấy ra các bản ghi có id nhỏ hơn 15….

Trong trường hợp nếu muốn lấy ra toàn bộ bản ghi trong bảng ta có thể bỏ qua lệnh WHERE.

Ở dạng đầy đủ hơn và có thể lấy ra được dữ liệu tối ưu nhất, cú pháp của lệnh SELECT trong SQL Server sẽ có thêm như sau:

SELECT [ ALL | DISTINCT ]
[ TOP (gia_tri_dau) [ PERCENT ] [ WITH TIES ] ]
“Biểu thức”
FROM “bảng”
[WHERE “điều kiện”]
[GROUP BY “biểu thức”]
[HAVING “điều kiện”]
[ORDER BY “biểu thức” [ ASC | DESC ]];

Trong đó:

GROUP BY “biểu thức”: Tùy chọn. Thu thập dữ liệu từ nhiều bản ghi và nhóm kết quả theo một hoặc nhiều cột.

HAVING “điều kiện”: Tùy chọn. Dùng kết hợp với GROUP BY để giới hạn nhóm các hàng trả về khi điều kiện được đáp ứng là TRUE.

ORDER BY “biểu thức”: Tùy chọn. Được dùng để lọc bộ kết quả. ASC sẽ lọc theo thứ tự tăng dần và DESC sẽ lọc theo thứ tự giảm dần.

Ví dụ về SELECT trong MySQL

Ví dụ mình có bảng users gồm các bản ghi như bên dưới.

Câu lệnh SELECT trong MySQL -Khi nào thì dùng lệnh SELECT

Bây giờ mình sẽ lấy ra toàn bộ dữ liệu trong bảng, có nghĩa là lấy hết tất cả các hàng và tất cả thông tin trong 1 hàng, câu lệnh SQL như sau:

SELECT *
FROM users

Ta nhận được kết quả như vậy.

Câu lệnh SELECT trong MySQL -Khi nào thì dùng lệnh SELECT

Tiếp theo mình sẽ thực hiện chỉ lấy ra các user có chức vụ là Trưởng phòng, tức posotion_id =2. Lệnh SQL.

SELECT *
FROM `users`
WHERE position_id = 2;

Kết quả thực hiện truy vấn.

Câu lệnh sql select kèm điều kiện

Tiếp tục một ví dụ nữa là sẽ lấy ra các user là Nhân viên, khác với ví dụ trên là lấy hết tất cả thông tin thì ở đây sẽ chỉ lấy ra các thông tin là id, position_id position_name.

SELECT id, position_id, position_name
FROM `users`
WHERE position_id = 3

Ta nhận được kết quả thực hiện truy vấn.

Câu lệnh SELECT trong MySQL -Khi nào thì dùng lệnh SELECT

Cách dùng mệnh đề ORDER BY, GROUP BY, HAVING sử dụng trong lệnh SELECT, cũng như các điều kiện mệnh đề WHERE nâng cao hơn mình sẽ tiếp tục thực hiện trong các bài viết tiếp theo, tiếp tục theo dõi nhé. Cảm ơn bạn đã đọc hết bài viết.

[XEM TẤT CẢ BÀI VIẾT CHUYÊN ĐỀ MYSQL TẠI ĐÂY]

XEM THÊM
Lệnh DELETE trong MySQL – Lệnh xóa bản ghi
Tìm hiểu thuộc tính AUTO_INCREMENT trong MySQL – Giá trị tự tăng dần
Câu lệnh CREATE TABLE trong MySQL – Lệnh tạo bảng mới
Câu lệnh INSERT INTO trong MySQL – Lệnh chèn dữ liệu vào bảng
Mệnh đề WHERE trong MySQL – Mệnh đề điều kiện
0 0 Phiếu bình chọn
Xếp hạng bài viết
BÀI VIẾT LIÊN QUAN
Đăng ký nhận thông báo
Thông báo email khi
guest
0 Bình luận
Không thể gửi email
Phản hồi nội tuyến

NÊN ĐỌC THÊM

Bạn muốn tìm kiếm gì?

Dịch vụ code thuê

TUICOCACH.COM NHẬN ĐẶT TEXTLINK, BANNER, GP
0
Giáo sư! có thể ném gạch bên dưới nhé!x