Có 2 cách để lọc số nguyên trong khoảng 6-10: dùng BETWEEN (đơn giản) hoặc REGEXP (biểu thức chính quy).
Cách 1: BETWEEN (khuyên dùng cho số)
SELECT * FROM ten_bang WHERE ten_cot BETWEEN 6 AND 10;
Cách 2: REGEXP
SELECT * FROM ten_bang WHERE ten_cot REGEXP '10|[6-9]';
Pattern '10|[6-9]' nghĩa là: khớp "10" HOẶC bất kỳ ký tự nào trong tập [6-9].
Ví dụ minh họa
Tạo bảng và chèn số 1-10:
mysql> CREATE TABLE RegexDemo (Id INT); mysql> INSERT INTO RegexDemo VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
Kết quả BETWEEN
mysql> SELECT * FROM RegexDemo WHERE Id BETWEEN 6 AND 10;
+------+ | Id | +------+ | 6 | | 7 | | 8 | | 9 | | 10 | +------+
Kết quả REGEXP
mysql> SELECT * FROM RegexDemo WHERE Id REGEXP '10|[6-9]';
+------+ | Id | +------+ | 6 | | 7 | | 8 | | 9 | | 10 | +------+
So sánh: BETWEEN hiệu quả hơn cho số (sử dụng index). REGEXP hữu ích khi pattern phức tạp (vd: số có 2 chữ số, số chẵn, v.v.).