Du får dela upp strängen. Splitta vid mellanslag och sedan plocka ut det så.
strVar = split(Request.Form("strSearchString")," ")
'SQL-sträng:
strSQL = "SELECT * FROM db WHERE strText LIKE '%"& strVar(0) &"%'"
Loopa ut det så, typ.
3 svar · 165 visningar · startad av Jesper T
Jag har en liten fråga ang. sökning i en databas.
Jag har en text i en kolumn där det står:
Min bil är blå.
Om jag söker på 'min' eller 'min bil' går det bra, men söker jag på 'blå bil' så får jag noll träffar, det är mindre bra. Hur skall jag lösa det på bästa sätt?
Du får dela upp strängen. Splitta vid mellanslag och sedan plocka ut det så.
strVar = split(Request.Form("strSearchString")," ")
'SQL-sträng:
strSQL = "SELECT * FROM db WHERE strText LIKE '%"& strVar(0) &"%'"
Loopa ut det så, typ.
sql = "select * from t "
if len(searchWords) > 0 then
strings = split(searchWords," ")
for i = 0 to ubound(strings)
if i = 0 then
sql = sql & "where "
else
sql = sql & "and "
end if
sql = sql & "searchColumn like '%" & strings(i) & "%'"
next
end if
Det är ju frågan om du skall ha and eller or. Om du har AND så måste alla ord finnas i kolumnen. Om du använder OR så räcker det med att ett av orden finns.
Tack, jag kan ju ha en dropplist med "och/eller".