• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

MySQL Fulltext-Suche funktioniert nicht

handschigl

New member
Hallo,

folgende Tabelle habe ich erstellt:
-- phpMyAdmin SQL Dump
-- version 2.11.9.2
-- phpMyAdmin
--
-- Host: localhost
-- Erstellungszeit: 24. März 2009 um 19:46
-- Server Version: 5.0.32
-- PHP-Version: 5.2.0-8+etch13

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

--
-- Datenbank: `usr_web39_1`
--

-- --------------------------------------------------------

--
-- Tabellenstruktur für Tabelle `tipps`
--

CREATE TABLE IF NOT EXISTS `tipps` (
`id` int(11) NOT NULL auto_increment,
`parent_id` varchar(255) default NULL,
`titel` varchar(255) default NULL,
`beschreibung` text,
`inhalt` text,
`user_id` int(11) default NULL,
`punkte` int(11) default '0',
`votes` int(11) default '0',
`views` int(11) default '0',
`datum` int(11) default NULL,
`admin` int(11) default '0',
`newsletter` int(11) default '0',
`bearbeitetvon` int(11) default NULL,
`bearbeitetam` int(11) default NULL,
`parent_tipp` int(11) default '0',
`keywords` text,
`tc` int(11) default '0',
PRIMARY KEY (`id`),
FULLTEXT KEY `titel_4` (`titel`,`beschreibung`,`inhalt`,`keywords`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

--
-- Daten für Tabelle `tipps`
--

INSERT INTO `tipps` (`id`, `parent_id`, `titel`, `beschreibung`, `inhalt`, `user_id`, `punkte`, `votes`, `views`, `datum`, `admin`, `newsletter`, `bearbeitetvon`, `bearbeitetam`, `parent_tipp`, `keywords`, `tc`) VALUES
(1, '2', 'Testprodukt', 'Das ist für die SEO', '<p>Das ist ein Testartikel</p>', 2, 0, 0, 14, 1237820344, 0, 0, NULL, NULL, 0, 'testprodukt, pci', 0);

Wenn ich nun diese SQL-Anweisung eingebe, wird nichts gefunden, obwohl das eigentlich nicht sein dürfte
select count(id) as anzahl from tipps where MATCH (titel,beschreibung,inhalt,keywords) AGAINST ('Testprodukt')
 
Eine solche Methode funktioniert am besten mit großen Sammlungen (und sie wurde auch speziell auf diesen Zweck hin sorgfältig optimiert). Bei sehr kleinen Tabellen spiegelt die Wortverteilung ihren jeweiligen semantischen Wert nicht adäquat wider. So ist etwa das Wort „MySQL“ in jedem Datensatz der oben gezeigten Tabelle articles vorhanden, d. h., eine Suche nach diesem Wort führt zu keinem Ergebnis:

Quelle:MySQL :: MySQL 5.1 Referenzhandbuch :: 12.7 MySQL-Volltextsuche

ein paar mehr Daten und es funktioniert:
Code:
--
-- Daten für Tabelle `tipps`
--

INSERT INTO `tipps` (`id`, `parent_id`, `titel`, `beschreibung`, `inhalt`, `user_id`, `punkte`, `votes`, `views`, `datum`, `admin`, `newsletter`, `bearbeitetvon`, `bearbeitetam`, `parent_tipp`, `keywords`, `tc`) VALUES
(1, '2', 'Testprodukt', 'Das ist für die SEO', '<p>Das ist ein Testartikel</p>', 2, 0, 0, 14, 1237820344, 0, 0, NULL, NULL, 0, 'testprodukt, pci', 0),
(2, NULL, 'was anderes', NULL, NULL, NULL, 0, 0, 0, NULL, 0, 0, NULL, NULL, 0, 'ds fdsafölk dsmglksa kndskjanf hasdf iusafnkdsng idsknfklns akjnfd lads', 0),
(3, NULL, 'dsfsad', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', NULL, 0, 0, 0, NULL, 0, 0, NULL, NULL, 0, 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 0),
(4, NULL, 'dsfdsa ds fdsa', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', NULL, 0, 0, 0, NULL, 0, 0, NULL, NULL, 0, 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 0),
(5, NULL, 'dsfsad', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', NULL, 0, 0, 0, NULL, 0, 0, NULL, NULL, 0, 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 0),
(6, NULL, 'dsfdsa ds fdsa', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', NULL, 0, 0, 0, NULL, 0, 0, NULL, NULL, 0, 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 0),
(7, NULL, 'dsfsad', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', NULL, 0, 0, 0, NULL, 0, 0, NULL, NULL, 0, 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 0),
(8, NULL, 'dsfdsa ds fdsa', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', NULL, 0, 0, 0, NULL, 0, 0, NULL, NULL, 0, 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 0),
(9, NULL, 'dsfsad', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', NULL, 0, 0, 0, NULL, 0, 0, NULL, NULL, 0, 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 0),
(10, NULL, 'dsfdsa ds fdsa', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', NULL, 0, 0, 0, NULL, 0, 0, NULL, NULL, 0, 'sadf dsf kdsölkfndslknflkjnjdks dslkf njdsalkfdsa flkds nfjdshf vkndsa lgdslkngk ndsajfbdsnv salk', 0);
 
Zurück
Oben