Avatar billede the-gnu.dk Nybegynder
16. april 2003 - 12:08 Der er 5 kommentarer og
1 løsning

SQL søgning og LIKE

Jeg skal have lavet en søgning med SQL, hvor den trækker data ud med navn.

Et navn kunne være Annita Holst Jensen

Hvis man søger på Annita, virker det.
Hvis man søger på Annita Holst, virker det.
Hvis man søger på Annita Holst Jensen, virker det.

Men hvis man søger på Annita Jensen, virker det IKKE. Det er så her jeg mangler lidt hjælp.

Min søgning ser ud som følgende:

strSQL = strSQL & " (test.navn1 LIKE '%"& navn &"%' OR test.navn2 LIKE '%"& navn &"%')"

Er der mon nogen der har en løsning?
Avatar billede erikjacobsen Ekspert
16. april 2003 - 12:18 #1
Er det fordi "Annita Holst" står i navn1 og "Jensen" i navn2 ?
Avatar billede the-gnu.dk Nybegynder
16. april 2003 - 12:24 #2
Nej... navn indeholder navnet (f.eks. Annita Holst)

Men den søger i 2 forskellige felter i databasen
Avatar billede erikjacobsen Ekspert
16. april 2003 - 12:27 #3
Ja, det er jo det jeg skriver. Ikke?

Så skal du enten selv gætte på hvordan brugeren anfører
fornavn og efternavn, eller have to felter. Eller lave
en upræcis søgning.
Avatar billede mortrr Praktikant
16. april 2003 - 12:35 #4
Du kan splitte navnet op, og lave en AND søgning på de tre dele.

if Navn<>"" then
  arrNavn=Split(Navn," ")
  strSQL= strSQL & " ("
  for i=lBound(arrNavn) to uBound(arrNavn)
    if i>lBound(arrNavn) then
      strSQL=strSQL & " AND "
    end if
    strSQL=strSQL & " navn1 LIKE '%" & arrNavn(i) & "%' "
  next
  strSQL= strSQL & ") "
end if
Avatar billede erikjacobsen Ekspert
16. april 2003 - 12:41 #5
og så skal du lige have nav2 med også ... ;)
Avatar billede mortrr Praktikant
16. april 2003 - 12:43 #6
"De" skal jo også have lov at lave lidt selv ;-)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester