abfrage von wortanfang

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • abfrage von wortanfang

    Servus

    Ich will mir alle wörter aus der datenbank ausgeben lassen, die mit $wort anfangen

    habe das wie folgt gelöst:
    PHP-Code:
    "SELECT word from words WHERE word LIKE '".$wort."%'" ORDER BY word ASC
    aber das dauert ziemlich lange...

    gibts da irgendwie ne bessere abfrage?


    thx
    Das Problem zu erkennen ist wichtiger, als die Lösung zu erkennen, denn die genaue Darstellung des Problems führt zur Lösung.
    [Albert Einstein

  • #2
    setz noch ein LIMIT an.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      ein index über die ersten strlen($word)-Zeichen, wenn strlen($word) ein konstanter wert ist

      Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

      bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
      Wie man Fragen richtig stellt

      Kommentar


      • #4
        also LIMIT bringt mir ja nichts, da ich ja alle wörter haben will!


        und das mit strlen verteh ich nicht ganz, wie du das benutzen willst?

        vll zur info: die wörter sind in der DB alphabetisch sortiert....
        Das Problem zu erkennen ist wichtiger, als die Lösung zu erkennen, denn die genaue Darstellung des Problems führt zur Lösung.
        [Albert Einstein

        Kommentar


        • #5
          So wie es da steht, ein Index auf die Spalte setzen, wobei die Länge der Länge entsprechen sollte, nach der du suchen willst, sodass für den Vergleich zwischen Datensatz-Wort, nur der Index, nicht der Datensatz gebraucht wird

          Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

          bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
          Wie man Fragen richtig stellt

          Kommentar

          Lädt...
          X