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

Dùng LIMIT 1 để lấy 1 hàng trong MySQL

Kết hợp WHERE với LIMIT 1 để đảm bảo chỉ trả về tối đa 1 hàng (hữu ích khi điều kiện có thể khớp nhiều hàng).

Cú pháp

SELECT * FROM ten_bang WHERE dieu_kien LIMIT 1;

Ví dụ minh họa

Bảng selectWithPrimaryKey (Id PK, 7 hàng).

Truy vấn: Lấy 1 hàng thỏa Id=10 HOẶC Age=29 HOẶC Marks=89:

SELECT * 
FROM selectWithPrimaryKey 
WHERE Id = 10 OR Age = 29 OR Marks = 89 
LIMIT 1;

Kết quả: Hàng đầu tiên khớp (Id=2, Marks=89)

+----+------+------+-------+
| Id | Name | Age  | Marks |
+----+------+------+-------+
|  2 | John |   23 |    89 |
+----+------+------+-------+

Lưu ý:

  • Nếu không có ORDER BY, hàng trả về **không xác định** (tuỳ plan thực thi).
  • Luôn thêm ORDER BY nếu cần hàng cụ thể (ví dụ: mới nhất, lớn nhất...).
  • LIMIT 1 cũng dùng cho phân trang (LIMIT offset, 1) hoặc kiểm tra tồn tại (EXISTS hiệu quả hơn).