Forum » Programiranje » FULLTEXT indeksi - problemi pri osnovnem primeru
FULLTEXT indeksi - problemi pri osnovnem primeru
barelyLegal ::
Če kar kopiram strukturo tabele in podatke:
FULLTEXT indeks sem dal na naslovno_vrstico in zgodbo, kot je razvidno zgoraj iz strukture.
Ko sedaj izvedem povpraševanje:
mi ne vrne nič.
Jasno, če iščem s pomočjo BOOLEAN MODE najde.
Ampak mene zanima, zakaj mi brez IN BOOLEAN MODE ne dela? Borut Pahor se nahaja v prvi novici v vsebini in ne vidim razloga, da ga ne bi našlo. Gre morda za kakšno izmed strogih pravil fulltext indeksov?
Hvala za odgovore
CREATE TABLE `novice` (
`id` int(11) NOT NULL auto_increment,
`naslovna_vrstica` varchar(244) collate utf8_unicode_ci NOT NULL,
`zgodba` text collate utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
FULLTEXT KEY `naslovna_vrstica` (`naslovna_vrstica`,`zgodba`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=16 ;
INSERT INTO `novice` (`id`, `naslovna_vrstica`, `zgodba`) VALUES
(14, 'Zaradi Rupla postal osovražen', 'Premier Borut Pahor je v Lendavi na slovesnosti ob 50-letnici Pomurskega madžarskega radia in 30-letnici televizijskih oddaj v madžarskem jeziku na kratko komentiral tudi imenovanje Dimitrija Rupla za svojega posebnega odposlanca. "Jaz danes veljam za enega najbolj osovraženih slovenskih politikov," je dejal in dodal, da sicer razume negodovanje ljudi zaradi nedavne odločitve, ampak je ne obžaluje. Kot je pojasnil, so ga pri tej odločitvi vodili pošteni nameni: "Odločil sem se zanjo v luči svojih stremljenj, da poiščemo v ljudeh, najprej sam pri sebi, potem pa tudi pri drugih, tisto, kar je pri njih najboljše."'),
(15, 'Gaspari bo nadomeščal', 'Pravico, da imenuje ministra, ki ga nadomešča v primeru odsotnosti ali zadržanosti, predsedniku vlade daje 15. člen zakona o vladi. Pri tem pa isti člen tudi določa, da predsednika vlade ni mogoče nadomeščati pri opravljanju nalog, ki se nanašajo na zaupnico vladi ter na imenovanje in razrešitve ministrov.');
FULLTEXT indeks sem dal na naslovno_vrstico in zgodbo, kot je razvidno zgoraj iz strukture.
Ko sedaj izvedem povpraševanje:
SELECT * FROM `novice`
WHERE MATCH (naslovna_vrstica,zgodba) AGAINST ('Borut Pahor');
mi ne vrne nič.
Jasno, če iščem s pomočjo BOOLEAN MODE najde.
SELECT * FROM `novice`
WHERE MATCH (naslovna_vrstica,zgodba) AGAINST ('Borut Pahor' IN BOOLEAN MODE);
Ampak mene zanima, zakaj mi brez IN BOOLEAN MODE ne dela? Borut Pahor se nahaja v prvi novici v vsebini in ne vidim razloga, da ga ne bi našlo. Gre morda za kakšno izmed strogih pravil fulltext indeksov?
Hvala za odgovore
Error
darkolord ::
V natural language načinu se besede ignorirajo, v kolikor so prisotne v več kot 50% vrstic. Morda je pri tebi to problem
barelyLegal ::
Hvala za odgovor.
Kot je najbrž razvidno iz INSERT stavkov se Borut Pahor ne pojavlja v več kot 50% vrsticah, saj je omenjen samo enkrat v precej dolgem spisu.
Kot je najbrž razvidno iz INSERT stavkov se Borut Pahor ne pojavlja v več kot 50% vrsticah, saj je omenjen samo enkrat v precej dolgem spisu.
Error
barelyLegal ::
vbistvu imam 2 vrstice ampak potem se pojavlja v 50% primerih. Sem dodal še en zapis, naredil poizvedbo brez in boolean mode in glej ga zlomka, res dela.
Torej ta 50% threshold pomeni, da če se določena beseda pojavlja v vsakem ROWu, je ne bo našel brez in boolean mode?
Torej ta 50% threshold pomeni, da če se določena beseda pojavlja v vsakem ROWu, je ne bo našel brez in boolean mode?
Error
darkolord ::
Torej ta 50% threshold pomeni, da če se določena beseda pojavlja v vsakem ROWu, je ne bo našel brez in boolean mode?
Tako je. To lahko izklopiš samo če popraviš source...
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [php] encoding nizaOddelek: Izdelava spletišč | 3784 (1699) | BivšiUser2 |
» | MySql Vprasanje - problem dupliciranih kljucevOddelek: Izdelava spletišč | 1424 (1246) | KernelPanic |
» | Kako dobit šumnik iz bazeOddelek: Izdelava spletišč | 2783 (2641) | MRB0rYS |
» | Prikaz šumnikov z UTF-8 ?Oddelek: Izdelava spletišč | 9200 (9074) | Person |
» | portal ostal, baza slaOddelek: Izdelava spletišč | 1824 (1709) | bombacina |