Gần đây tôi đã làm việc trên một số chức năng tìm kiếm cơ sở dữ liệu và muốn nhận một số thông tin như các từ trung bình trên mỗi tài liệu (ví dụ: trường văn bản trong cơ sở dữ liệu). Điều duy nhất tôi đã tìm thấy cho đến nay (không xử lý ngôn ngữ được lựa chọn bên ngoài DB) là:Sử dụng SQL để xác định số liệu đếm từ của trường văn bản
SELECT AVG(LENGTH(content) - LENGTH(REPLACE(content, ' ', '')) + 1)
FROM documents
Điều này có vẻ hoạt động * nhưng bạn có đề xuất nào khác không? Tôi hiện đang sử dụng MySQL 4 (hy vọng sẽ chuyển sang phiên bản 5 cho ứng dụng này sớm), nhưng tôi cũng quan tâm đến các giải pháp chung.
Cảm ơn!
* Tôi có thể tưởng tượng rằng đây là một cách khá thô để xác định điều này vì nó không tính đến HTML trong nội dung và nội dung tương tự. Đó là OK cho dự án cụ thể này nhưng một lần nữa là có cách tốt hơn?
Cập nhật: Để xác định ý tôi là "tốt hơn": chính xác hơn, hoạt động hiệu quả hơn hoặc chính xác hơn (dễ bảo trì, thực hành tốt, v.v.). Đối với nội dung tôi có, truy vấn ở trên đủ nhanh và chính xác cho dự án này, nhưng tôi có thể cần một thứ tương tự trong tương lai (vì vậy tôi đã hỏi).
Bạn cần xác định "tốt hơn" –