Code Tu Tam

Cách truy vấn dữ liệu trong MySQL với câu lệnh Select

Rate this post

Xin chào các bạn trong bài viết này chúng tôi sẽ hướng dẫn này, bạn học cách sử dụng câu lệnh SELECT trong MySQL mà không cần tham chiếu đến bất kỳ bảng nào.

MySQL Select không bắt buộc phải có mệnh đề FROM

Thông thường, bạn sử dụng câu lệnh SELECT để chọn dữ liệu từ một bảng trong cơ sở dữ liệu:

SELECT select_list
FROM table_name;

MySQL không yêu cầu FROM. Nó có nghĩa là bạn có thể có một câu lệnh SELECT mà  FROM đằng trước như sau:

SELECT select_list;

Đây là một ví dụ nhỏ:

SELECT 1 + 1;

Kết quả:

+-------+
| 1 + 1 |
+-------+
|     2 |
+-------+
1 row in set (0.00 sec)

MySQL có nhiều hàm tích hợp sẵn như các hàm chuỗi, ngày tháng và các hàm Toán học. Và bạn có thể sử dụng câu lệnh SELECT để thực thi các chức năng này.

Ví dụ sau trả về ngày và giờ hiện tại của máy chủ MySQL:

SELECT NOW();

Kết quả:

+---------------------+
| NOW()               |
+---------------------+
| 2021-07-26 08:08:02 |
+---------------------+
1 row in set (0.00 sec)

Hàm NOW() trả về ngày và giờ hiện tại của máy chủ mà MySQL chạy trên đó. Hàm NOW() không có bất kỳ tham số nào. Để gọi nó, bạn đặt dấu ngoặc đơn () sau tên hàm.

Nếu một hàm có các tham số, bạn cần truyền các đối số vào nó. Ví dụ: nối hai hay nhiều chuỗi thành một chuỗi, bạn có thể sử dụng hàm CONCAT():

SELECT CONCAT('John',' ','Doe');

Kết quả:

+--------------------------+
| CONCAT('John',' ','Doe') |
+--------------------------+
| John Doe                 |
+--------------------------+
1 row in set (0.00 sec)

Hàm CONCAT() chấp nhận một hoặc nhiều chuỗi và nối chúng thành một chuỗi duy nhất.

Bảng kép

Đôi khi, bạn vẫn cần sử dụng mệnh đề FROM nhưng bạn không muốn tham chiếu đến bất kỳ bảng thực tế nào. Trong trường hợp này, bạn có thể sử dụng bảng kép trong mệnh đề FROM:

SELECT select_list
FROM dual;

Bảng kép là một bảng giả, không phải là một bảng thực tế.

Bảng kép cũng cần thiết trong trường hợp bạn cần các mệnh đề khác của câu lệnh SELECT. Không có mệnh đề FROM.

Giới thiệu nhanh về bí danh cột (column alias)

Theo mặc định, MySQL sử dụng tên trường để làm tên cột của tập kết quả. Để thay đổi tên cột của tập hợp kết quả, bạn có thể sử dụng bí alias:

SELECT expression AS column_alias;

Để gán bí danh cho một cột, bạn đặt từ khóa AS sau tên cột cần đổi tên sau as là tên cần đổi.

Từ khóa AS là không bắt buộc, vì vậy bạn có thể không cần dùng AS mã vẫn có thể đổi tên. Ví dụ:

SELECT expression column_alias;

Ví dụ:

SELECT CONCAT('John',' ','Doe') AS name;

Kết quả:

+----------+
| name     |
+----------+
| John Doe |
+----------+
1 row in set (0.00 sec)

Nếu bí danh cột chứa khoảng trắng, bạn cần đặt nó bên trong dấu ngoặc kép như sau:

SELECT CONCAT('Jane',' ','Doe') AS 'Full name';

Kết quả:

+-----------+
| Full name |
+-----------+
| John Doe  |
+-----------+
1 row in set (0.00 sec)

Tổng kết

Bài viết liên quan:

Exit mobile version