TweakPC

Zurück   Computer Hardware Forum - TweakPC > Games und Software > Programmiersprachen
Registrieren Hilfe Community Downloads

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27.02.2008, 08:27   #1 (permalink)
Stickstoff Junkie
 
Benutzerbild von Fabian
 

Registriert seit: 02.02.2002
Beiträge: 3.678

Fabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer Anblick

Standard MySQL: Volltext-Suche

Hallo,

so ich bin es mal wieder.
Ich möchte eine Volltext-Suche realisieren, dafür bietet MySQL ja entsprechende Funktionen.

- ... WHERE suche LIKE '%firefox%'
- ... WHERE MATCH ( suche ) AGAINST ( 'firefox*' )

Nun die erste Frage: Welche ist schneller? Ich denke die zweite Abfrage ist deutlich schneller, oder?
Zum zweiten: Ich möchte auch ein Ergebnis bekommen, wenn jemand "fox" eingibt. Die LIKE-Methode kann dies Dank der eingefügten Prozentzeichen, bei der zweiten Methode habe ich noch keine Lösung gefunden auch ein '*fox*' hilft leider nichts, die Suche geht nur andersrum, sprich 'fire*' findet auch Firefox.

Ideen?

Gruß
Fabian

Update: Mittlerweile habe ich auch einen Kommentar gefunden. Es geht mit der Volltext-Suche nicht, weil MySQL hier auf einen Index (Baum) zurückgreift und für den sind die ersten Buchstaben logischerweise die wichtigsten. Habt ihr vielleicht doch noch Ideen?

Geändert von Fabian (27.02.2008 um 08:46 Uhr)
Fabian ist offline   Mit Zitat antworten
Alt 27.02.2008, 09:27   #2 (permalink)
TPC-InventarNr. 1337
 
Benutzerbild von io.sys
 

Registriert seit: 11.04.2002
Beiträge: 14.068

io.sys hat eine strahlende Zukunft
io.sys hat eine strahlende Zukunftio.sys hat eine strahlende Zukunftio.sys hat eine strahlende Zukunft

Standard AW: MySQL: Volltext-Suche

Hallo Fabian,

ich kann Dir jetzt dazu keine genaue Angabe machen, jedoch einen Erfahrungswert aus den Datenbankabfragen geben, die wir hier immer wieder gegen große Kundendatenbanken laufen lassen.

Der LIKE Befehl ist in den meisten Fällen um ein vielfaches langsamer als der MATCH.

WEiss jetzt nicht, ob das relevant ist, aber wollte das einfach mal zum Besten geben...

Grüße,

der io
io.sys ist offline   Mit Zitat antworten
Für diesen Beitrag bedankt sich:
Fabian (27.02.2008)
Alt 27.02.2008, 10:04   #3 (permalink)
Stickstoff Junkie
 
Benutzerbild von Fabian
 

Registriert seit: 02.02.2002
Beiträge: 3.678

Fabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer Anblick

Standard AW: MySQL: Volltext-Suche

Jo, genau das habe ich befürchtet. Denn LIKE "%fox%" oder RLIKE "fox" würden genau das machen, was ich brauche, aber eben nur langsam. Ich brauche da etwas schnelleres.
Fabian ist offline   Mit Zitat antworten
Alt 28.02.2008, 08:11   #4 (permalink)
Overclocker
 

Registriert seit: 24.05.2002
Beiträge: 200

BenniG. wird schon bald berühmt werdenBenniG. wird schon bald berühmt werden

Standard AW: MySQL: Volltext-Suche

Du kannst auch im BOOLEAN Mode suchen bei Match Against. Wahrscheinlich ist es das, was du suchst..
MySQL :: MySQL 5.0 Reference Manual :: 11.8.2 Boolean Full-Text Searches
BenniG. ist offline   Mit Zitat antworten
Für diesen Beitrag bedankt sich:
Fabian (28.02.2008)
Alt 28.02.2008, 08:17   #5 (permalink)
Stickstoff Junkie
 
Benutzerbild von Fabian
 

Registriert seit: 02.02.2002
Beiträge: 3.678

Fabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer Anblick

Standard AW: MySQL: Volltext-Suche

Hi, danke für den Hinweis, aber ich hatte schon im Boolean-Mode gesucht (das nur oben vereinfacht dargestellt). Damit kann man wenigstens schon einmal "und", "oder" und "*" benutzen. Aber man kann damit auch nicht "*fox*" suchen, das vordere Sternchen wird einfach nicht verwendet.
Fabian ist offline   Mit Zitat antworten
Antwort

Stichworte
mysql, volltextsuche


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist aus.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[News] MySQL zeitweise mit Schadsoftware verseucht TweakPC Newsbot News 2 27.09.2011 19:09
Lokaler Webserver mit PHP/MySQL Dero06 Windows & Programme 4 24.12.2006 12:34
MySQL wie funktionierts?! LeoHart Programmiersprachen 5 04.07.2005 15:34
MySQL - Suchzeitausgabe ?! predi Programmiersprachen 1 14.06.2005 11:58
Gutes Newsystem mit MySQL ?! webAndy Programmiersprachen 0 20.04.2003 09:56


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:25 Uhr.






Powered by vBulletin® Version 3.8.10 (Deutsch)
Copyright ©2000 - 2026, vBulletin Solutions, Inc.
SEO by vBSEO 3.5.2 ©2010, Crawlability, Inc.
Impressum, Datenschutz Copyright © 1999-2015 TweakPC, Alle Rechte vorbehalten, all rights reserved