Det bliver noget i denne retning: "select * from DinTabel where MATCH (Brand,ItemType,ItemColor) AGAINST ('enTekst')"
Synes godt om
Slettet bruger
01. september 2004 - 13:26#2
Kan UNION måske bruges?
F.eks.: SELECT * FROM varer WHERE (Brand LIKE '%" & SearchString1 & "%' OR Brand LIKE '%" & SearchString2 & "%' OR Brand LIKE '%" & SearchString3 & "%') AND Isearch=" & ID & " AND SOLD=0 UNION SELECT * FROM varer WHERE (ItemType LIKE '%" & SearchString1 & "%' OR ItemType LIKE '%" & SearchString2 & "%' OR ItemType LIKE '%" & SearchString3 & "%') AND Isearch=" & ID & " AND SOLD=0 UNION SELECT * FROM varer WHERE (ItemColor LIKE '%" & SearchString1 & "%' OR ItemColor LIKE '%" & SearchString2 & "%' OR ItemColor LIKE '%" & SearchString3 & "%') AND Isearch=" & ID & " AND SOLD=0
SQLstmt = SQLstmt & "OR (Brand LIKE '%" & SearchString1 & "%' AND ItemType LIKE '%" & SearchString2 & "%' AND Brand LIKE '%" & SearchString3 & "%') " SQLstmt = SQLstmt & "OR (ItemType LIKE '%" & SearchString1 & "%' AND Brand LIKE '%" & SearchString2 & "%' AND Brand LIKE '%" & SearchString3
Jeg er ikke sikker på hvordan den opfører sig med flere søgeord som måske/måske ikke er der. Bruger altid Boolean metoden når der er flere ord, så jeg ville samle dine SearchString til en linje som kan bruges i en Boolean MATCH.
Det handler om at få samlet dine SearchString's til en. Nu ved jeg ikke hvilket sprog du bruger, men det ser sådan ud i ASP
<% MatchString = "" if trim(SearchString1) <> "" then MatchString = MatchString & "+"& SearchString1 & " " end if if trim(SearchString2) <> "" then MatchString = MatchString & "+"& SearchString2 & " " end if if trim(SearchString3) <> "" then MatchString = MatchString & "+"& SearchString3 & " " end if SQLstmt = "SELECT * FROM varer WHERE MATCH (Brand,ItemType,ItemColor) AGAINST ('"& MatchString &"' IN BOOLEAN MODE)"
Jeg tvivler på det vil hjælpe, da du søger inde i teksten på kolonnerne. Index hjælper primært på sortering samt præcis valg (Brand='EtEllerAndet') da den så allerede har records sorteret.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.