Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Phương pháp trường tìm kiếm MYSQL

Vì vậy, nếu chúng ta giả sử rằng các cột namecolors 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 .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gây ra bởi:java.sql.SQLException:Quyền truy cập bị từ chối đối với người dùng 'root' @ 'localhost' (sử dụng mật khẩu:CÓ)

  2. Nhận phần trăm Đếm (*) cho số lượng tất cả các mục trong GROUP BY

  3. PHP + MySql + Thủ tục lưu trữ, làm cách nào để truy cập một giá trị ngoài?

  4. THAM GIA và GROUP_CONCAT với ba bảng

  5. Truy vấn giá trị cơ sở dữ liệu dựa trên vị trí của người dùng