Volltextsuche und min. Wortlänge bzw. zuviele Treffer

Alles, was MariaDB und MySQL betrifft, kann hier besprochen werden.

Volltextsuche und min. Wortlänge bzw. zuviele Treffer

Postby Dirty Harry » 02. May 2021 12:29

Hallo

Ich habe da eine Frage an die Spezialisten hier.
Ich habe eine Datenbank mit InnoDB aufgesetzt, an den Systemkonfiguration habe ich nichts geändert..genauer, die mindestwortlänge
beträgt 3 Zeichen soweit sogut.
Was mich stört ist jetzt aber folgendes, suche ich z.B. nach ,,ghost in the shell,, dann werden ganz viele Datensätze als gefunden ausgegeben,
also zum Beispiel sowas...The Jacksons, The House, The Raider, The Mexicans, The The, The Humans, The Mangolian und und und, irgendwann ganz zum Schluss kommt dann das was ich eigentlich gesucht habe
"ghost in the shell".
Wie kommt das? und wie bzw. was muss man machen/einstellen dass das was eigentlich identisch ist an erster Stelle bei der Suche ausgegeben wird?

Greift hier nicht eigentlich die INNODB_FT_DEFAULT_STOPWORD Tabelle also die Stopwords? weil ,,the,, ist ja nicht relevant?

Danke.
Dirty Harry
 
Posts: 21
Joined: 16. January 2021 14:33
XAMPP version: 3.2.4
Operating System: Windows

Re: Volltextsuche und min. Wortlänge bzw. zuviele Treffer

Postby Nobbie » 02. May 2021 13:43

Die Frage ist so nicht beantwortbar, FULLTEXT ist ein umfangreiches Kapitel in MySQL und die Treffer hängen von vielen Faktoren ab, u.a. die Stopwords, aber auch vom Query an sich (den sehen wir hier nicht), am besten arbeitest Du Dich mal durch die komplette Doku, da sind auch viele Beispiele drin, letztendlich gibt es auch viele Tutorials über FULLTEXT SEARCH im Internet, sicherlich wirst Du da finden, wonach Du suchst, Aber die paar Angaben aus der Fragestellung sind zu wenig Information, viel zu wenig.

HIer die Original Doku: https://dev.mysql.com/doc/refman/8.0/en ... earch.html
Nobbie
 
Posts: 12118
Joined: 09. March 2008 13:04

Re: Volltextsuche und min. Wortlänge bzw. zuviele Treffer

Postby Dirty Harry » 02. May 2021 16:30

Ich gebe in dem Query jetzt die Wörter testweise direkt an, gleiches Problem..also ich habe mal nach THE gesucht und mir werden Ergebnisse presentiert..was eigentlich nicht sein dürfte weil THE ist in der Stopwordliste. Dokus kenn ich, und Google hab ich auch schon durch. Nichts brauchbares gefunden.
Aber hier hast du den Query...gespannt bin...

Code: Select all
$query = mysqli_query($_connect, "SELECT `blubber`, `blabber` FROM `eins` INNER JOIN `zwei` USING (pass) WHERE MATCH(`blubber`) AGAINST("The" IN BOOLEAN MODE) OR MATCH(`blabber`) AGAINST("The" IN BOOLEAN MODE) ORDER BY `blubber` ASC LIMIT 0,100") or die(mysql_fehler($_connect));
Dirty Harry
 
Posts: 21
Joined: 16. January 2021 14:33
XAMPP version: 3.2.4
Operating System: Windows

Re: Volltextsuche und min. Wortlänge bzw. zuviele Treffer

Postby Nobbie » 02. May 2021 17:48

Wieso machst Du überhaupt FULLTEXT, bei so kleinen Texten würde ich mit LIKE und ggf. REGEXP nach konkreten Strings suchen. Dauert vielleicht länger, aber auch erst bei abertausenden von Zeilen.

Ich kann Dir die Spannung nicht nehmen, das musst Du selbst herausfinden.
Nobbie
 
Posts: 12118
Joined: 09. March 2008 13:04

Re: Volltextsuche und min. Wortlänge bzw. zuviele Treffer

Postby Dirty Harry » 04. May 2021 19:37

Wer sagt denn das es kleine Texte sind? es geht hier doch um das Wort THE. Wenn ich nach ,,may car is in the Garage,, suche, werden mir hunderte Treffer mit NUR THE ausgegeben ohne ein einziges anderes Wort aus dem Suchstring. Treffer mit Garage oder Car werden auch ausgegeben aber weit weit unten. Es geht darum das THE ein Stopword ist und nicht wichtiger sein darf als car oder garage, sprich es dürfte bei der Suche gar nicht berücksichtigt werden...tut es aber, udn ich weiß nicht warum...du scheinbar auch nicht.
Dirty Harry
 
Posts: 21
Joined: 16. January 2021 14:33
XAMPP version: 3.2.4
Operating System: Windows

Re: Volltextsuche und min. Wortlänge bzw. zuviele Treffer

Postby Nobbie » 04. May 2021 20:30

Nein, es geht darum, die FULLTEXT Suche vollständig zu verstehen. Ich kann Dir versprechen, wenn ich es bräuchte, würde ich die Doku durcharbeiten und verstehen. So einfach ist das.

Du verstehst noch nicht einmal meinen EInwand, dass Du kleine Texte durchsuchst, dann quäle Dich weiter mit FULLTEXT. Ich bin relativ sicher, dass das für Dein Datenmodell die ungeeignete Suche ist. Aber Du darfst es gerne versuchen, mir ist das vollkommen wurscht, ob das funktioniert, ob Du mich für einen Idioten hältst oder was auch immer. Ich versuche nur, den Leuten zu helfen und auf die richtige Spur zu bringen. Selbstverständlich darfst Du alles besser wissen. Viel Glück.
Nobbie
 
Posts: 12118
Joined: 09. March 2008 13:04


Return to MariaDB - MySQL

Who is online

Users browsing this forum: No registered users and 1 guest