[MySQL] - =?ISO-8859-2?Q?Spos=F3b_na_pozbycie_si=EA_pols?==?ISO-8859-2?Q?kich_liter?=
koszu28 - 20-08-2007 00:00
[MySQL] - =?ISO-8859-2?Q?Spos=F3b_na_pozbycie_si=EA_pols?==?ISO-8859-2?Q?kich_liter?=
Witam serdecznie. Chicałbym, pozbyć się polskich liter podczas przeszukiwania w tabelach. Po co to potrzebne. A no, jeżeli użytkownik wpisze w wyszukiwarce słowo "łóżko" lub "lozko" lub "łozko" chciałbym aby zawsze znalazł odpowiedni rekord w bazie. Mam 2 pomysły na rozwiązanie tego problemu: a) za pomocą wyrażen regularnych np: select * from produkty where ereg(nazwa_produktu, [wyrażene regularne]) like('%lozko%'); Niestety nie wiem czy MySQL obsługuje wyrażenia regularne, a zapytanie z komendą "ereg" (w PHP) to tylko fikcyjny przykład. b) stworzyć tabelę "slownik" z dwoma polami: - słowo prawidłowe - i jego reprezentację bez polskich znaków.
Z góry thanx za odp.
dap997 - 20-08-2007 00:00
koszu28 napisał(a): > Witam serdecznie. > Chicałbym, pozbyć się polskich liter podczas przeszukiwania w tabelach. > Po co to potrzebne. A no, jeżeli użytkownik wpisze w wyszukiwarce słowo > "łóżko" lub "lozko" lub "łozko" chciałbym aby zawsze znalazł odpowiedni > rekord w bazie. Mam 2 pomysły na rozwiązanie tego problemu: > a) za pomocą wyrażen regularnych np: > select * from produkty where ereg(nazwa_produktu, [wyrażene regularne]) > like('%lozko%'); > Niestety nie wiem czy MySQL obsługuje wyrażenia regularne, a zapytanie z > komendą "ereg" (w PHP) to tylko fikcyjny przykład. > b) stworzyć tabelę "slownik" z dwoma polami: > - słowo prawidłowe > - i jego reprezentację bez polskich znaków.
To drugie :)
dap
Grzegorz Danowski - 20-08-2007 00:00
=?iso-8859-2?Q?Re:_=5BMySQL=5D_-_Spos=F3b_na_pozbycie_si=EA_polskich_liter?=
"koszu28" <koszu28@interia.pl> wrote in message news:fa8mgu$fc6$1@inews.gazeta.pl... > Chicałbym, pozbyć się polskich liter podczas przeszukiwania w tabelach. Po > co to potrzebne. A no, jeżeli użytkownik wpisze w wyszukiwarce słowo > "łóżko" lub "lozko" lub "łozko" chciałbym aby zawsze znalazł odpowiedni > rekord w bazie. Mam 2 pomysły na rozwiązanie tego problemu:
> a) za pomocą wyrażen regularnych np: .... > b) stworzyć tabelę "slownik" z dwoma polami: > - słowo prawidłowe > - i jego reprezentację bez polskich znaków.
Ewentualnie możesz spróbować dodać dodatkową kolumnę z nazwą produktu bez polskich liter, aktulizowaną np. w triggerze. Takie rozwiązanie będzie bardziej pamięciożerne, ale przy wyszukiwaniu może się okazać dużo szybsze. -- Pozdrawiam Grzegorz
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Gdzie MySQL 4.1, a gdzie 5.0?
[MS SQL] "set names" (mySQL) w MS SQL
oracle -> oracle lub oracle -> mysql replikacja - programy
[mysql 4.0] SELECT t1.id, t1.foo FROM t1 oraz COUNT t2 w jednym zapytaniu.
[MySQL] Zwrot tego, co pasuje i nie pasuje :-/
[pgsql] Dostosowanie składni MySQL 5.0 -> PGSQL 8.1
[mysql] galeria zdjec - numerowanie zdjec
[MySQL] Zapytanie z pliku , wynik do pliku
[mysql] CONCAT agregujący, ale nie GROUP_CONCAT()
mysql data 0000-00-00 na koniec
zanotowane.pldoc.pisz.plpdf.pisz.plponland.htw.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|