Chcę porównać poszczególne słowa od danych wprowadzanych przez użytkownika do poszczególnych słów z kolumny w mojej tabeli.SQL: Dzielenie kolumny na wiele słów w celu wyszukania wprowadzonego przez użytkownika
Na przykład, następujące wiersze w moim stole:
ID Name
1 Jack Nicholson
2 Henry Jack Blueberry
3 Pontiac Riddleson Jack
Uważają, że wejście użytkownika jest 'Pontiac Jack'. Chcę przypisać ciężary/rangi dla każdego meczu, więc nie mogę użyć koca LIKE (WHERE Name LIKE @SearchString).
Jeśli Pontiac jest obecny w dowolnym rzędzie, chcę przyznać mu 10 punktów. Każdy mecz dla Jacka dostaje kolejne 10 punktów, itd. Tak więc rząd 3 uzyskałby 20 punktów, a rzędy 1 i 2 otrzymałyby 10.
Podzielę dane użytkownika na poszczególne słowa i zapisałem je w tabeli tymczasowej @SearchWords (Słowo).
Ale nie mogę znaleźć sposobu, aby mieć instrukcję SELECT, która pozwala mi połączyć to. Może robię to w niewłaściwy sposób?
Cheers, WT
Czy rozważałeś zastosowanie wyszukiwania pełnotekstowego SQL SErver? –
Tak, mam - nie działało dobrze dla nas i bardzo trudno było dostosować go do naszych wymagań. –
+1 dla wyszukiwania fullText - niekoniecznie SQL Server, ale na przykład lucene.net. –