Hibatűrő keresés 0 találat esetén
Sziasztok!
Egy olyan kéréssel fordultak hozzám, hogy ha egy adatbázisban történő keresés nem ad eredményt, akkor listázzam ki 3 karakter eltérésig a hasonló szavakra kapott találatokat is. (Pl.: 'kasca'-ra jöjjön a 'kacsa' találat, stb)
MySQL-ben van erre valami beépített függvény, algoritmus, bármi? A soundex() mennyire használható magyarországon erre a célra?
Azt azért túlzásnak tartanám, hogy az összes lehetséges elütési hibára külön lekérdezést indítsak, vagy feltételnek az összes lehetséges feltételt megadjam (`mezo` LIKE "%k___a%" OR `mezo` LIKE "%k__c_%" OR...).
Tudnátok erre a problémára valami ötletet/anyagot/segítséget adni, merre induljak el?
Előre is köszi!
Zs.
■ Egy olyan kéréssel fordultak hozzám, hogy ha egy adatbázisban történő keresés nem ad eredményt, akkor listázzam ki 3 karakter eltérésig a hasonló szavakra kapott találatokat is. (Pl.: 'kasca'-ra jöjjön a 'kacsa' találat, stb)
MySQL-ben van erre valami beépített függvény, algoritmus, bármi? A soundex() mennyire használható magyarországon erre a célra?
Azt azért túlzásnak tartanám, hogy az összes lehetséges elütési hibára külön lekérdezést indítsak, vagy feltételnek az összes lehetséges feltételt megadjam (`mezo` LIKE "%k___a%" OR `mezo` LIKE "%k__c_%" OR...).
Tudnátok erre a problémára valami ötletet/anyagot/segítséget adni, merre induljak el?
Előre is köszi!
Zs.
Levenshtein távolság
phpban alapból benne is van, http://hu.php.net/manual/hu/function.levenshtein.php
nem igazán jó
Ez a levensthein dolog tök jó lenne, ha lenne egy szótáram, amihez hasonlítani lehetne a keresendő szót. De nem kérhetem le a teljes adatbázist egy php tömbbe, hogy megkeressem a leginkább illeszkedő stringeket. Ez a függvény akkor lenne tuti, ha a mysql-be lenne beépítve. de így, php-ből elég gázos.
Ettől függetlenül köszi a hozzászólást, ebből is tanultam :)
Zs.
tárolt eljárás/fügvény
vagy csinálj cache táblát, ahol minden létező szópárra kiszámolod ezt.
csak ötletek. De mindenképpen lassú lesz, s a szótár létrehozását nem kerülheted el szvsz
félmegoldás