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

FREETEXTTABLE luôn có thứ hạng 0

Tôi đang gặp sự cố tương tự và câu trả lời hiện được chấp nhận không phải là một giải pháp cho tôi.

Có, xếp hạng được thực hiện như đã nói trong câu trả lời này, nhưng nó không phải là lý do để có kết quả không nhất quán khi nó đã được một số lần kể từ lần xây dựng lại danh mục cuối cùng. Xếp hạng không nên thay đổi đáng kể khi xây dựng lại và thậm chí ít hơn một vài phút sau khi xây dựng lại ...

Đối với tôi, có một lỗi trong freetexttable xếp hạng. (Lỗi không ảnh hưởng đến containstable xếp hạng:Tôi đã tự kiểm tra nó bằng danh mục lỗi của riêng mình và nó cũng được viết trên bài đăng này trên diễn đàn Microsoft .)

Từ bài đăng khác trên diễn đàn Microsoft này có vẻ như lỗi này chỉ xảy ra trong danh mục chỉ có rất ít hàng được lập chỉ mục. Việc thêm dữ liệu vào danh mục sẽ khiến lỗi biến mất.

Vì vậy, đây là câu trả lời của tôi, được lấy từ Pavel Valenta trên một bài đăng khác trên diễn đàn của Microsoft :

Nếu danh mục thực của bạn sẽ không có nhiều hơn vài trăm hàng được lập chỉ mục, hãy thêm một số bảng giả vào danh mục của bạn để có nhiều hàng được lập chỉ mục hơn.

Điều này sẽ không làm ô nhiễm kết quả của bạn do cách xây dựng các truy vấn. Vâng, điều này có vẻ là một sửa chữa khá kỳ lạ. Nhưng đó là cách duy nhất giải quyết được rắc rối cho tôi.

Một lưu ý cuối cùng:Tôi gặp sự cố này với sql 2005 sp4, không được thử nghiệm với 2008. (Câu hỏi dành cho năm 2008.)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tạo trình kích hoạt chèn các giá trị vào bảng mới khi một cột được cập nhật

  2. tính toán Row Wise Sum - Máy chủ Sql

  3. Hành vi @@ rowcount không mong muốn bên trong UDF trong MS SQL 2019

  4. Câu lệnh điều kiện trong truy vấn sql trên Trang ASP cổ điển

  5. Toán tử OR Ngắn mạch trong SQL Server