Hướng dẫn này là một phần của loạt bài Tìm hiểu Truy vấn SQL Cơ bản Sử dụng MySQL. Trong hướng dẫn này, chúng ta sẽ thảo luận về các truy vấn SQL để tìm nạp các hàng hoặc đọc dữ liệu từ một bảng trong MySQL.
Chọn truy vấn
Lệnh SELECT có thể được sử dụng để đọc các hàng từ một bảng. Trong trường hợp bạn đăng nhập từ xa vào cơ sở dữ liệu, bạn cũng sẽ cần đặc quyền CHỌN cho bảng để đọc các hàng từ bảng.
# SELECT - Cú pháp
SELECT [ALL | DISTINCT | DISTINCTROW] < chọn biểu thức > FROM tên_bảng;
# SELECT - Cú pháp - Tất cả các cột
SELECT [ALL | DISTINCT | DISTINCTROW] * FROM tên_bảng;
# SELECT - Cú pháp - Các cột chọn lọc
SELECT [ALL | DISTINCT | DISTINCTROW] cột_1, cột_2, ... FROM tên_bảng;
# SELECT - Cú pháp - Lọc kết quả bằng cách sử dụng WHERE
SELECT [ALL | DISTINCT | DISTINCTROW] cột_1, cột_2, ... FROM table_name WHERE <điều kiện lọc đơn hoặc nhiều>;
Giải thích Truy vấn
Lệnh MySQL SELECT có thể được sử dụng để đọc các hàng hoặc dữ liệu từ tên bảng đã cho trong đó biểu thức chọn và tên của bảng là bắt buộc.
Việc sử dụng các từ khóa ALL hoặc DISTINCT hoặc DISTINCTROW là tùy chọn. TẤT CẢ là từ khóa mặc định trong trường hợp không có từ khóa nào được chỉ định.
Chúng tôi cũng cần chỉ định biểu thức chọn để lấy dữ liệu từ bảng đã cho. Chúng tôi có thể sử dụng * hoặc tên cột được phân tách bằng dấu phẩy để lấy kết quả truy vấn từ bảng. Chúng tôi cũng có thể chỉ định bí danh cho tên cột bằng từ khóa AS .
Các hướng dẫn tiếp theo của loạt bài này giải thích cách sử dụng nâng cao của truy vấn chọn để lọc, sắp xếp hoặc nhóm kết quả bằng cách sử dụng WHERE , THÍCH , ĐẶT HÀNG BỞI và GROUP BY mệnh đề.
Ví dụ
Phần này cung cấp các ví dụ để đọc dữ liệu từ bảng bằng lệnh SELECT. Sử dụng truy vấn được đề cập bên dưới để tạo bảng người dùng có các cột id, tên và họ để lưu trữ dữ liệu người dùng.
# Tạo bảng người dùng
TẠO BẢNG `user` (
` user_id` bigint (20) NOT NULL,
`first_name` varchar (45),
` last_name `varchar (45)
);
Truy vấn được đề cập bên dưới có thể được sử dụng để chèn dữ liệu vào bảng người dùng.
# Chèn hàng - Tất cả các cột
CHÈN VÀO `user` (` user_id`, `first_name`,` last_name`) VALUES
(1, 'John', 'Smith'),
(2, 'Rick', 'Jones'),
(3, 'Catherine', 'Ponting'),
(4, 'Harsh', 'Upadhyay'),
(5, 'Tajwinder', 'Singh');
Truy vấn đề cập ở trên sẽ chèn 5 hàng trong bảng có id, tên và họ để đại diện cho 5 người dùng khác nhau.
Bây giờ chúng ta sẽ đọc dữ liệu do chúng ta chèn trong bảng người dùng. Nó có thể được thực hiện bằng cách sử dụng lệnh SELECT như hình dưới đây.
# Đọc tất cả các cột và hàng
CHỌN * TỪ `người dùng`;
# Kết quả
1 John Smith
2 Rick Jones
3 Catherine Ponting
4 Harsh Upadhyay
5 Tajwinder Singh
# Đọc các cột chọn lọc
CHỌN `first_name`,` last_name` FROM `user`;
# Kết quả
John Smith
Rick Jones
Catherine Ponting
Harsh Upadhyay
Tajwinder Singh
Truy vấn đầu tiên sẽ hiển thị tất cả các cột trong kết quả truy vấn trong khi truy vấn thứ hai sẽ chỉ hiển thị dữ liệu hàng cho các cột do chúng tôi cung cấp.
Trong trường hợp số hàng trong bảng lớn hơn 50 hoặc 100, bạn nên đọc dữ liệu giới hạn bằng cách sử dụng LIMIT hoặc OFFSET.
# Đọc các hàng giới hạn
CHỌN * TỪ `người dùng` LIMIT 2;
# Kết quả
1 John Smith
2 Rick Jones
/> # Đọc các hàng giới hạn bằng cách sử dụng offset
CHỌN * TỪ `người dùng` LIMIT 3, 2;
# Kết quả
4 Harsh Upadhyay
5 Tajwinder Singh
>
Chúng tôi có thể sử dụng từ khóa LIMIT để tìm nạp các hàng giới hạn bằng cách chỉ định các giá trị chênh lệch và giới hạn. Trong ví dụ trên, truy vấn đầu tiên sẽ đọc hai hàng đầu tiên. Truy vấn thứ hai cũng sẽ đọc 2 hàng bắt đầu từ hàng thứ 4 bằng cách chỉ định giá trị offset thành 3.
Đây là cách chúng ta có thể đọc dữ liệu được lưu trữ trong các bảng MySQL.