एसक्यूएल सर्वर 2008 का उपयोग करके आप वास्तव में पूर्ण-पाठ खोज का उपयोग करके सटीक स्ट्रिंग मिलान कैसे प्राप्त कर सकते हैं। मुझे इसके साथ एक कठिन समय है और मुझे कहीं भी ऑनलाइन संतोषजनक समाधान नहीं मिल सका।पूर्ण-पाठ खोज का उपयोग कर सटीक मिलान प्राप्त करें
उदाहरण के लिए, यदि मैं स्ट्रिंग "बोजन स्क्रचेव्स्की" की खोज कर रहा हूं, तो मैं पहले परिणाम को बिल्कुल ठीक करना चाहता हूं।
अब तक मैंने स्ट्रिंग को स्वरूपित करने की कोशिश की है: "बोजन * निकट स्केचेव्स्की *" और परिणाम प्राप्त करने के लिए कंटेनस्टबल कॉल करें, लेकिन यह स्ट्रिंग बोजाना और बोजनाना आदि के रूप में अधिक परिणाम लौटने के लिए स्वरूपित है। मैंने भी आदेश देने की कोशिश की रैंक, लेकिन अभी भी कोई सफलता नहीं है।
इसके अलावा, मेरी स्ट्रिंग में मैं की तरह एक नंबर अनुक्रम है: "3 1 7" है, लेकिन मौजूदा स्वरूपण के साथ यह भी देता है "7 1 3" आदि
उदाहरण:
DECLARE @var varchar(4000);
SET @var = '"Oxford*" NEAR 24 NEAR 7 NEAR 5 NEAR "London*"'
SELECT [Key] FROM CONTAINSTABLE(dbo.[MyTable], [MyField], @var);
मैं सटीक क्रम प्राप्त करने में सक्षम होना चाहता हूं। नतीजतन "ऑक्सफोर्ड 7 24 5 लंदन" नहीं मिला।
मैं इसे सही ढंग से पूरा करने के लिए स्ट्रिंग को कैसे प्रारूपित करूं?
@ क्रिस्टॉफ - उदाहरण: यदि मैं इस तरह की एक स्ट्रिंग की खोज करता हूं: "ऑक्सफोर्ड 24 3 6 लंदन" और यदि "ऑक्सफोर्ड 3 24 6 लंदन" है तो यह भी वापस कर दिया जाएगा। मैं सटीक क्रम में केवल सटीक मैच चाहता हूं। – TheBoyan
संदर्भ के लिए यह उदाहरण है जहां से उदाहरण मिले हैं: http://msdn.microsoft.com/en-us/library/ms142583.aspx – Mike