سؤال

في MS SQL Full Text Search ، أنا أستخدم Isabout في استفساراتي.

على سبيل المثال ، يجب أن يعيد هذا المراكز العشرة الأولى ProductIDs (PK) مع أ RANK حقل في ProductDetails الطاولة

SELECT * 
FROM CONTAINSTABLE( ProductDetails, *, ISABOUT("Nikon" WEIGHT (1.0), "Cameras" Weight(0.9)), 10 )

ومع ذلك ، وفقا ل وثائق SQL ISABOUT تم إهماله.

لذلك ، لدي سؤالان:

  1. ما هو ISABOUT يتم استبدالها؟
  2. هل أنا بحاجة حتى SQL Command هناك؟ (أيو ، هل سيكون مجرد وضع عبارة البحث "كاميرات نيكون" أفضل؟)

ما كنت أحاول في الأصل أن أحققه هنا هو وزن الكلمة الأولى أعلى ، ثم الكلمة الثانية أقل ، والحفاظ على النزول إلى 0.5 حيث كنت أرتب فقط الكلمات المتبقية عند 0.5.

كان منطقي (وربما يكون معيبًا) هو أن كلمات البحث الأكثر صلة بالأشخاص تحدث عادةً بالقرب من بداية العبارة (باللغة الإنجليزية).

  • هل أنا ذاهب حول هذا بالطريقة الخاطئة؟
  • هل هناك طريقة أفضل؟
  • هل أسأل الكثير من الأسئلة؟ (^_^)

بفضل كل وقتك...

هل كانت مفيدة؟

المحلول

يشير الرابط الخاص بك أعلاه إلى Search Enterprise ، ولكن بالنسبة للبحث عن نص خادم SQL ، لا يزال IsAbout مدعومًا كجزء من يحتوي على مسند و احتواء وظيفة.

تم تغطية هذا السؤال أيضًا منشور إلى البحث عن خادم MSDN SQL المنتدى.

نصائح أخرى

ISABOUT يضيف أوزان مخصصة إلى كلماتك التي تساعد في ترتيب المستندات التي تم إرجاعها. ل CONTAINS(), ، لا يفعل أي تصنيف ، هذا النموذج ليس له تأثير.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top