« 1 2
Autor Zpráva
lenkali
Profil *
Podívám se na to, děkuji, už jsem z toho neštastná
Tomasss
Profil *
Jak by to mohlo najít Mičůnek, když hledáš micunek??

Už jsem se to snažil napsat jednou, zopakuju to:
Zařídit, aby vyhledávání v databázi ignorovalo velikost znaků, je triviální věc. Zařídit, aby ignorovalo diakritiku, jednoduchým postupem nejde.

Ale dá se to obejít. Kdybys hledala, tak najdeš toto:

http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=28&topic=6 3989

a pak toto:
http://dev.mysql.com/doc/refman/5.0/en/regexp.html

Takže jestli jsem to správně pochopil, stačí
select * from tabulka where pole1 = "Tkáč"

nahradit

select * from tabulka where pole1 regexp "^[t,T][k,K][a,á,ä,A,Á,Ä][c,C,č,Č]$"

Postupuj podle této logiky. Stačí hledaný string rozsekat na znaky a pro každý z nich vytvořit patřičný seznam znaků.
Tomasss
Profil *
M je naprosto jiný znak než m, ale protože převod jednoho na druhý je poměrně častá záležitost, někdo na to napsal funkci, to je to LCASE, UCASE.

Stejně tak Č nemá vůbec nic společného s C, ale ta potřeba toto převádět je v globálním měřítku tak malá, že na to v mySQL funkce není.

Nicméně existuje něco, čemu se říká regulární výrazy a jak jsem napsal výše, MySQL podle nich hledat umí. Jen si nejsem jist od které verze mysql to platí, ale to se dá určitě jednoduše vyguglit.
« 1 2

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0