/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Fonetisk søgning i MySQL
Fra : Carsten Højgaard


Dato : 20-08-02 16:41

Jeg har brug for at kunne lave fonetisk søgning i min MySQL database.
I min database har jeg kolonnerne 'id', 'fornavn' og 'efternavn'.

Jeg har allerede fået lavet følgende SQL-sætning:
SELECT * FROM person WHERE STRCMP(SOUNDEX(efternavn), SOUNDEX("Petersen")) =
0;

Med den kan jeg fx søge på fx "Petersen" og få følgende resultater:
Pedersen
Pederson
Petersen

Mit problem er nu: hvad hvis efternavnet er "Erik Petersen".
Så kommer han ikke længere med som resultat. Kan jeg på en måde flette LIKE
med ind i mit statement, eller er der en bedre løsning?



 
 
Jakob Møbjerg Nielse~ (20-08-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 20-08-02 16:53

Carsten Højgaard wrote:
> Mit problem er nu: hvad hvis efternavnet er "Erik Petersen".


Du kan fx splitte ordet op hved hvert mellemrum og lave en OR søgning på
begge ord.

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
http://www.jakobnielsen.dk/ | -- Terry Pratchett, Reaper Man
Jeg søger et fuldtidsjob som programmør. Tag et kig på hjemmesiden.



Carsten Højgaard (21-08-2002)
Kommentar
Fra : Carsten Højgaard


Dato : 21-08-02 11:56

> Du kan fx splitte ordet op hved hvert mellemrum og lave en OR søgning på
> begge ord.

Lyder som en god løsning. Jeg kender godt OR, men hvordan kan jeg splitte en
string op i SQL?



Jakob Møbjerg Nielse~ (21-08-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 21-08-02 12:04

Carsten Højgaard wrote:
> Lyder som en god løsning. Jeg kender godt OR, men hvordan kan jeg
> splitte en string op i SQL?

Jeg tæntke nu mere at generere SQL'en i et eller andet sprog, fx PHP. I
hvilken forbindelse bruger du den?

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
http://www.jakobnielsen.dk/ | -- Terry Pratchett, Reaper Man
Jeg søger et fuldtidsjob som programmør. Tag et kig på hjemmesiden.



Carsten Højgaard (21-08-2002)
Kommentar
Fra : Carsten Højgaard


Dato : 21-08-02 14:00

> > Lyder som en god løsning. Jeg kender godt OR, men hvordan kan jeg
> > splitte en string op i SQL?
>
> Jeg tæntke nu mere at generere SQL'en i et eller andet sprog, fx PHP. I
> hvilken forbindelse bruger du den?

Forespørgslen kommer fra en Java-applikation som jeg er ved at udvikle. Jeg
kunne selvfølgelig lade Java gennemløbe alle poster, men det ville være en
meget dårlig løsning mht. performance.



Jakob Møbjerg Nielse~ (21-08-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 21-08-02 14:09

Carsten Højgaard wrote:
> Forespørgslen kommer fra en Java-applikation som jeg er ved at
> udvikle. Jeg kunne selvfølgelig lade Java gennemløbe alle poster, men
> det ville være en meget dårlig løsning mht. performance.

Du kender vel strengen der skal søges på, inden der søges. Så kan du
splitte strengen op i Java, generere SQL'en og udføre den. Det burde
ikke nedsætte performance.

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
http://www.jakobnielsen.dk/ | -- Terry Pratchett, Reaper Man
Jeg søger et fuldtidsjob som programmør. Tag et kig på hjemmesiden.



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste