webForumDet fria alternativet

Avancerad Sök?

ASP

2 svar · 227 visningar · startad av voigtann1

Medlem sedan juni 20019 519 inlägg
Frågan#1

Just nu kör jag det ändå jag känner till när det gäller att söka igenom databasen:

 like '%%" & ord & "%%

min fråga är om man kan göra en sök funktion som om man skriver två ord exempel:
"Här kommer lite text"

om man söker med orden kommer och text
så ska den hitta strängen ändå.. jag funderade på om man ska göra en arrey och splita strängen på något sätt men jag vet inte om SQL satsen går ihop i praktiken. hoppas man kan få lite hjälp om det ens går.

Medlem sedan dec. 20003 887 inlägg
#2

Dubbla %-tecken?

Splitta söksträngen på mellanslag och stoppa in resultatet i en IN-klausul i WHERE-delen. Glöm inte att lägga till apostrofer runt dom splittade sökorden.

red.
Lite dåligt beskrivet, men jag är en smula trött. Jag tror tanken kanske kan gå fram ändå.

Medlem sedan juni 20019 519 inlägg
#3

har inte kört IN någon gång... var ska den vara i:

ord2 = split(ord," ")

SQL = "SELECT id,n_topic,n_brod,n_text,n_datum FROM NEWS" &_
      " WHERE ok = true and"&_
      " n_brod like '%" & ord2 & "%'" &_
      " OR n_text like '%" & ord2 & "%'" &_
      " OR n_topic like '%" & ord2 & "%'" &_

Hittade något LarsG skrev för ett bra tag sen:

sql = "select * from t where 1 = 1 "
searchWords = split(request.form("searchWords")," ")

for i = 0 to ubound(searchWords)
sql = sql & " or name like '%" & searchWords(i) & "%'" 
next

Det var inte så du menade? blir inte den koden rätt seg att ladda?

251 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)