Trong MySQL, các biểu thức boolean có thể được sử dụng dưới dạng số nguyên - với 0 là false và 1 là true. Vì vậy, các hoạt động sau:
SELECT p.*,
((name LIKE '%samsung%') + (name LIKE '%galaxy%') + (name LIKE '%s4%')) as hits
FROM myprods p
WHERE name LIKE '%samsung%' OR name LIKE '%galaxy%' OR name LIKE '%s4%';
CHỈNH SỬA:
Nếu MySQL, bạn cũng có thể diễn đạt truy vấn này dưới dạng:
SELECT p.*,
((name LIKE '%samsung%') + (name LIKE '%galaxy%') + (name LIKE '%s4%')) as hits
FROM myprods p
HAVING hits > 0;
Việc sử dụng having
trong ngữ cảnh này là một phần mở rộng SQL và không hoạt động trong các cơ sở dữ liệu khác. Tuy nhiên, nó cho phép truy vấn tham chiếu đến bí danh cột để lọc mà không cần sử dụng truy vấn con.