MySQL - SELECT + diakritika
Mam pole s nazvom nadpis a jeho typ je klasicky varchar(30). Vlozim tam hodnotu 'Počítačová poradňa'. Potom pouzijem prikaz SELECT podla nadpisu a zadam 'Pocitacova poradna'. Samozrejme ze bez vysledku lebo 'Počítačová poradňa' != 'Pocitacova poradna'. Ako dosiahnem aby sa ignorovala diakritika? Uplne odstranit ju samozrejme nemozem...
Jedině si napsat převodní funkci, která z obou porovnávaných řetězců odstraní diakritiku.
Podobný problém řeší i tady: article.php
Akoze nie je problem odstranit diakritiku z hladaneho retazca... lenze ako to odstranit z MySQL ked je to tam uz raz ulozene? Mam davat 2x SELECT alebo SELECT celej databazy do pola a potom z pola vybrat len to co chcem? Zda sa mi to cele neefektivne. Neviem ci sa v tom clanku riesi prave toto... idem ho precitat...
EDIT: takze clanok som necital - stacilo si precitat prvy komentar:
Psal jsem, že v článku se řeší něco podobného, pro tvoje použití bys to musel upravit.
Zkus se teda podívat sem, to už je přesnější řešení:
http://forum.builder.cz/read.php?f=20&i=44351&t=443 19
jj, presne to som potreboval, dik
Ako vyzerá ten príkaz SELECT? Tipujem, že používaš znak '=' tam, kde by malo byť LIKE.
Takze som si spravil funkciu podla toho tej ukazky a z retazca 'pocitacova poradna' vytvori regularny vyraz '.+p[oóô][cč][ií][tť][aáä][cč][oóô]v[aáä] p[oóô][rŕ][aáä][dď][nň][aáä].+'. Teraz by ma zaujimala uz len taka malickost - je mozne nejak dosiahnut aby REGEXP bol case insensitive? Alebo musim funkciu na vytvaranie tych regularnych vyrazov upravit??
ved si vsetko preved do lowercase a tak regexpuj, to ti databaza standardne poskytuje....