Announcement

Collapse
No announcement yet.

Levenshtein und verschachtelte select

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Levenshtein und verschachtelte select

    hallo,
    Ich versuche gerade für eine internetseite eine suche in einer db zu bauen, und habe dafür libmysqllevenshtein installiert. (als UDF)
    das funktioniert auch alles super. solange ich nur ein feld mit levenshtein durchsuchen möchte.
    ich muss jetzt aber 3 felder der gleichen tabelle durchsuchen und das ist dann schon ein performance-problem.
    also dachte ich, man kann doch selects bestimmt irgendwie geschickt verschachteln und 3 felder zu einem zusammenfügen und auf das neue dann levenshtein anwenden.

    ich hoffe ihr versteht mich.

    also das hier geht mit einem feld:

    SELECT feld
    FROM tabelle
    WHERE
    LEVENSHTEIN(
    (feld1, 'vgl-string') <10
    ORDER BY LEVENSHTEIN(feld1, 'vgl-string')

    und ich dachte jetzt an sowas:

    SELECT feld, concat(feld1,feld2,feld3) AS suchfeld
    FROM tabelle
    WHERE
    LEVENSHTEIN(
    (suchfeld, 'vgl-string') <10
    ORDER BY LEVENSHTEIN(suchfeld, 'vgl-string')

    leider geht das aber nicht, ich denke weil "suchfeld" erst bei der abfrage entsteht und man das dann noch nicht direkt in ner UDF benutzen kann.

    könnt ihr mir helfen?
    danke

  • #2
    In der WHERE-Klausel sind die Alias-Bezeichner der SELECT-Klausel nicht bekannt,
    du musst also statt dem Alias einfach den Ausdruck angeben.
    Bei SQL-Code bitte beachten: Formatierung von SQL in Beiträgen

    Comment


    • #3
      danke

      jau, danke für die schnelle antwort.
      funktioniert wunderbar

      Comment

      Working...
      X