2011-07-11 20 views
5

Uzun başlık için özür dilerim ama gerçekten koymak için iyi bir yol düşünemiyorum - Şu anda büyük bir web uygulaması projesi üzerinde çalışıyorum ve ana özelliklerden biri de detaylı aramadır, proje hakkında çok fazla şey söylemeden iş ile ilgili anlaşmaları bulmak için kullanılır - arama fonksiyonu 3 sayfadan fazladır ve eğer isterseniz hemen hemen her seçeneği sunar sanayi ...karmaşık mysql arama işlemek için en iyi yol ve her bir sonuç ne kadar iyi olduğunu ölçmek

Ama şimdi sahip olduğum problem çok fazla alan ve bu yüzden db'deki eşleşmeleri aramaya gelince gerçekten en iyi yolu bilmiyorum Standart bir mysql gibi düşünün burada da kesmek istiyorum, aynı zamanda her bir sonucun ne kadar iyi olduğunu (iyi bir eşleşme) bulmalıyım ve sonra sonuçlarda belirtin (arama sonucu 1% 90 uygun vb.)

Bunun üstesinden gelmenin en iyi yolu hangisi olduğunu bilen var mı? Orada dış arama motorları vb var ama orada herhangi bir mantıksal seçim yapmak için herhangi bir şey bilmiyorum biliyorum ...

Teşekkürler!

cevap

2

Aramada alaka düzeyini bulmak, birçok parametreyle ilgilenen karmaşık bir konudur. MySQL match() araması, here'u gördüğünüz gibi oldukça karmaşıktır. Belki de bu puanı kendi ölçütünüz olarak kullanabilirsiniz. Bunu bir dereceye kadar customize yapabilirsiniz.

Belirtilen bir diğer seçenek, harici arama motorlarını kullanmaktır, Solr satırlarında bir şey. Aradığınız tüm gereksinimlere sahiptir. Hızlı, ölçeklenebilir ve özel gereksinimleriniz için "alaka düzeyini" iyileştirmek için isteğe uyarlama seçenekleri sunabiliyor.

+0

Merhaba, cevabınız için teşekkürler Sadece MySQL maçına bakıyorum - şimdiye kadar iyi bir uyum olabilirmiş gibi görünüyor ... – David

İlgili konular