Desidero confrontare le singole parole dell'input dell'utente con le singole parole di una colonna della tabella.SQL: divisione di una colonna in più parole per cercare l'input dell'utente
Per esempio, consideriamo queste righe nel mio tavolo:
ID Name
1 Jack Nicholson
2 Henry Jack Blueberry
3 Pontiac Riddleson Jack
Si consideri che l'input dell'utente è 'Pontiac Jack'. Voglio assegnare pesi/gradi per ogni partita, quindi non posso usare una coperta LIKE (WHERE Name LIKE @SearchString).
Se Pontiac è presente in qualsiasi riga, voglio assegnarlo 10 punti. Ogni match per Jack ottiene altri 10 punti, ecc. Quindi la riga 3 otterrebbe 20 punti e le righe 1 e 2 ottengono 10.
Ho diviso l'input dell'utente in singole parole e le ho archiviate in una tabella temporanea @SearchWords (Parola).
Ma non riesco a capire un modo per avere un'istruzione SELECT che mi permetta di combinare questo. Forse sto andando su questo nel modo sbagliato?
Cheers, WT
hai in mente di utilizzare SQL SErver Ricerca fulltext? –
Sì, ho - non funzionava bene per noi, ed era molto difficile personalizzarlo in base alle nostre esigenze. –
+1 per la ricerca fullText - non necessariamente SQL Server, ma per esempio lucene.net. –