Advanceret søgning - opdel søgestreng
Hej Eksperter,Jeg har har prøvet at bygge en stump kode, der kan hjælpe mig med at dele en vilkårlig række søgeord op og loope dem igennem min SQL-streng.
- Det virker umiddelbart 80%, men jeg er løbet panden mod muren.
En bruger kan have x antal poster i tabellen "tbl_cv_data" og det er disse der skal søges i.
Hvis der f.eks. søges på musik, finder den det ønskede udvalg af resultater. Men søger jeg på musik+teori, findes ingen poster.
Og det til trods for at der skulle være matches.
Jeg vil tro at det er min "and" søgning der ikke kan finde ud af loope korrekt igennem alle ord og poster for en bruger, når der søges på mere end et ord.
Jeg håber at I kan hjælpe mig videre.
Her min sql-kode pt.:
dim arrWords
arrWords = split(varExtSearchCriteria,"+")
strSQL1 = "select distinct userID, "&_
"(select workArea from tbl_user_workarea where tbl_user_workarea.workAreaID = (select workAreaID from tbl_user_data where tbl_user_data.userID=tbl_cv_data.userID))as uworkArea, " & _
"(select userPicture from tbl_user_data where tbl_user_data.userID=tbl_cv_data.userID)as uPicture, " & _
"(select userFName from tbl_user_data where tbl_user_data.userID=tbl_cv_data.userID)as uFName, " & _
"(select userLName from tbl_user_data where tbl_user_data.userID=tbl_cv_data.userID)as uLName, " & _
"(select userJobtitle from tbl_user_data where tbl_user_data.userID=tbl_cv_data.userID)as uJobtitle, " & _
"(select showUserEmail from tbl_user_data where tbl_user_data.userID=tbl_cv_data.userID)as showUserEmail, " & _
"(select userEmail from tbl_user_data where tbl_user_data.userID=tbl_cv_data.userID)as uEmail, " & _
"(select userPhone from tbl_user_data where tbl_user_data.userID=tbl_cv_data.userID)as uPhone " & _
"from tbl_cv_data where "
arrESC=Split(varExtSearchCriteria,"+")
strSQL1= strSQL1 & " "
for i=lBound(arrESC) to uBound(arrESC)
if i>lBound(arrESC) then
strSQL1=strSQL1 & " and "
end if
strSQL1=strSQL1 & " dataEntry like '%" & arrESC(i) & "%' "
next
strSQL1= strSQL1 & " and userID=(select userID from tbl_user_data where tbl_user_data.userID=tbl_cv_data.userID and active=1 and userLevel<>112) "
