Vì vậy, nếu chúng ta giả sử rằng các cột name
và colors
là những cột duy nhất chúng ta cần tìm kiếm, tôi sẽ làm như sau (giải pháp đơn giản nhưng sẽ hoạt động tốt nếu DB của bạn không có hàng triệu hàng và bạn không có hàng nghìn khách hàng tìm kiếm cùng một lúc).
Đầu tiên, tạo một chế độ xem
CREATE VIEW SearchHere AS
SELECT item_id, CONCAT(name, ' ', colors) AS FullDescription
FROM table
Tôi không biết tên của bảng trong ảnh chụp màn hình của bạn, vì vậy tôi đã sử dụng table
như tên của nó.
Bây giờ, nếu người dùng tìm kiếm adult red pants
bạn có thể đưa ra một truy vấn
SELECT item_id
FROM SearchHere
WHERE FullDescription LIKE '%adult%'
AND FullDescription LIKE '%red%'
AND FullDescription LIKE '%pants%'
Tất nhiên, bạn cần tạo truy vấn nhanh chóng nhưng đó không phải là vấn đề. Bạn có thể chơi với AND
hoặc OR
và đặt dấu cách ở giữa ký hiệu wildcrad %
và cụm từ tìm kiếm. Có thể bạn cũng muốn thực hiện chế độ xem theo cách phức tạp hơn, ví dụ:thực hiện nhiều hơn chỉ cần CONCAT
.