Mysql Abfrage WHERE MATCH `` AGAINST ('') klapt nicht

son gohan

Erfahrenes Mitglied
Hallo Leute, meine Abfrage:

PHP:
$aa = mysql_query("SELECT `t` FROM `a` WHERE MATCH `t` AGAINST ('haut')"); echo mysql_error();
    $add = mysql_num_rows($aa);
    echo $add;

ergibt immer 0 obwohl ich extra Testweise in die Spalte der Tabelle haut geschrieben habe, die komplette Struktur der Tabelle sieht so aus:
PHP:
-- 
-- Tabellenstruktur für Tabelle `a`
-- 
CREATE TABLE `a` (
  `t` varchar(250) collate latin1_general_ci NOT NULL default '',
  FULLTEXT KEY `t` (`t`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

-- 
-- Daten für Tabelle `a`
-- 
INSERT INTO `a` VALUES ('haut haut');
INSERT INTO `a` VALUES ('haut haut');

Also ich hab auch kein Fulltext index vergessen zu vergeben damit die Funktion Match Against überhaupt klapt, warum geht es trotzdem nicht?
 
Geht es mit:

SQL:
SELECT `t` 
FROM `a` 
WHERE MATCH `t` AGAINST ('haut*' IN BOOLEAN MODE)

? So klappte es bei mir eben (dann auch ohne FULLTEXT Index).
 
Hi, danke für die Hilfe!!

Es klapt so wie du es geschrieben hast, aber warum hat es nie auf der anderen Schreibweise geklapt, da war doch nichts falsch dran, wirklich zum verrückt werden sowas.

Mit IN BOOLEAN MODE brauch man kein FULLTEXT-Index, aber ist die Suche so nicht auch viel langsammer, so steht es zumindest im Mysql Handbuch dazu?
 
Zurück