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

Cách cho phép tìm kiếm toàn văn bản với dấu gạch ngang trong truy vấn tìm kiếm

Từ đây http://dev.mysql.com/doc /refman/5.0/en/fulltext-search.html

Một giải pháp để tìm một từ có dấu gạch ngang hoặc dấu gạch nối là sử dụng TÌM KIẾM VĂN BẢN ĐẦY ĐỦ TRONG CHẾ ĐỘ BOOLEAN và đặt từ bằng dấu gạch ngang / dấu gạch ngang trong dấu ngoặc kép.

Hoặc từ đây http://bugs.mysql.com/bug.php?id=2095

Có một cách giải quyết khác. Gần đây, tệp này đã được thêm vào sổ tay:"Sửa đổi tệp bộ ký tự:Việc này không yêu cầu biên dịch lại. Macro true_word_char () tạo thành bảng" loại ký tự "để phân biệt các chữ cái và số với các ký tự khác. Bạn có thể chỉnh sửa nội dung bằng một trong các ký tự đặt các tệp tin XML để chỉ định rằng '-' là một "chữ cái." Sau đó, sử dụng bộ ký tự đã cho cho các chỉ mụcFULLTEXT của bạn. "

Tôi chưa thử.

Chỉnh sửa:Đây là một số thông tin bổ sung từ đây http:/ /dev.mysql.com/doc/refman/5.0/en/fulltext-boolean.html

Một cụm từ được đặt trong các ký tự dấu ngoặc kép (“" ”) chỉ khớp với các hàng có chứa cụm từ theo nghĩa đen như khi nó được nhập. Công cụ toàn văn sẽ tách cụm từ thành các từ và thực hiện tìm kiếm trong chỉ mục FULLTEXT cho các từ. Trước MySQL 5.0.3, công cụ sau đó thực hiện tìm kiếm theo chuỗi con cho cụm từ trong các bản ghi được tìm thấy, do đó, kết quả khớp phải bao gồm các ký tự không phải từ khóa trong cụm từ. Kể từ MySQL 5.0.3, các ký tự không phải từ khóa không cần được khớp chính xác:Tìm kiếm theo cụm từ chỉ yêu cầu các kết quả phù hợp chứa chính xác các từ giống như cụm từ và theo cùng một thứ tự. Ví dụ:"cụm từ kiểm tra" đối sánh với "cụm từ kiểm tra" trong MySQL 5.0.3, nhưng không khớp với các từ trước đó.

Nếu cụm từ không chứa từ nào có trong chỉ mục, kết quả là trống. Ví dụ:nếu tất cả các từ đều là từ dừng hoặc ngắn hơn độ dài tối thiểu của các từ được lập chỉ mục, kết quả sẽ trống.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Khi nào tôi nên sử dụng các giao dịch trong các truy vấn của mình?

  2. Làm cách nào để khôi phục tệp kết xuất từ ​​mysqldump bằng kubernetes?

  3. python - Sự cố khi lưu ký tự Unicode sang MySQL với Django

  4. Chọn các giá trị bắt đầu bằng một số

  5. Tính chênh lệch thời gian giữa hai dấu thời gian trong mysql