Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách dùng subquery MySQL như một bảng trong mệnh đề FROM


Subquery có thể dùng như bảng trong mệnh đề FROM, tương tự như dùng kết quả subquery với toán tử trong WHERE. Bắt buộc dùng alias cho subquery.

Ví dụ

Dữ liệu bảng Cars:

mysql> Select * from Cars;
+------+--------------+---------+
| ID   | Name         | Price   |
+------+--------------+---------+
|    1 | Nexa         |  750000 |
|    2 | Maruti Swift |  450000 |
|    3 | BMW          | 4450000 |
|    4 | VOLVO        | 2250000 |
|    5 | Alto         |  250000 |
|    6 | Skoda        | 1250000 |
|    7 | Toyota       | 2400000 |
|    8 | Ford         | 1100000 |
+------+--------------+---------+

Subquery làm bảng trong FROM (alias C_car):

mysql> Select * FROM 
    (Select Name, Price from Cars Where Price > 200000) C_car 
    WHERE Name = 'Nexa';
+------+--------+
| Name | Price  |
+------+--------+
| Nexa | 750000 |
+------+--------+
1 row in set (0.00 sec)

Giải thích: Subquery lọc Price > 200000 tạo bảng tạm, truy vấn ngoài lọc tiếp Name = 'Nexa'. Alias C_car là bắt buộc.