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

Cách SELECT không trả về hàng và cột nào trong MySQL

Sử dụng SELECT NULL FROM bang WHERE FALSE để trả về result set rỗng (0 cột, 0 hàng) - hữu ích cho testing, template query.

Ví dụ minh họa

Tạo bảng có dữ liệu:

mysql> CREATE TABLE DemoTable1367 (Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName VARCHAR(20));
mysql> INSERT INTO DemoTable1367(FirstName) VALUES('Chris'), ('David'), ('Bob');

Xem dữ liệu (có 3 hàng):

mysql> SELECT * FROM DemoTable1367;
+----+-----------+
| Id | FirstName |
+----+-----------+
| 1  | Chris     |
| 2  | David     |
| 3  | Bob       |
+----+-----------+

Truy vấn trả về rỗng hoàn toàn:

mysql> SELECT NULL FROM DemoTable1367 WHERE FALSE;

Kết quả:

Empty set (0.00 sec)

Giải thích:

  • SELECT NULL: chọn hằng số NULL (1 cột).
  • WHERE FALSE: điều kiện luôn sai → 0 hàng khớp.
  • Kết hợp: result set 1 cột (NULL), 0 hàng.

Ứng dụng:

  • Tạo result set rỗng có cấu trúc xác định cho ứng dụng.
  • Kiểm tra syntax, quyền truy cập bảng không cần dữ liệu.
  • Trong UNION: (SELECT ...) UNION (SELECT NULL WHERE FALSE) đảm bảo kiểu cột khớp.