Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyszukiwanie
Van Pytel
post
Post #1





Grupa: Zarejestrowani
Postów: 150
Pomógł: 6
Dołączył: 3.03.2010

Ostrzeżenie: (0%)
-----


Witam.

Mam taki problem.

Otoz mam tabele:

kolumna1 - TEXT
kolumna2 - TEXT

W indexach mam:
szukanie FULLTEXT kolumna1 kolumna2

Korzystam z takiego polecenia:
SELECT * FROM `tabela` WHERE MATCH (kolumna1,kolumna2) AGAINST ('tekst')

i wskazuje mi na 0 wynikow mimo ze jest taki tekst w kolumnach/

Tez chcialem zmienic polecenie na LIKE %...% <-- ale ono tez nic nie znajduje.

Tez mam taki przypadek, ze jesli tekst jest z duzych liter i w pisze:
SELECT * FROM `tabela` WHERE kolumna LIKE '%TEKST%'
znajdzie ale jak wpisze z malej litery tekst to nie


Mnie wydaje sie ze jest problem w rozroznianiem liter tylko nie wiem gdzie tego szukac lub naprawic (IMG:style_emoticons/default/sad.gif)

Kodowanie kolumn mam na latin2_bin
A metoda porównywania napisów na latin2_bin

Wiec gdzie jest blad?

Dzieki za odpowiedz (IMG:style_emoticons/default/smile.gif)

Ten post edytował Van Pytel 20.10.2010, 15:57:41
Go to the top of the page
+Quote Post
sniver
post
Post #2





Grupa: Zarejestrowani
Postów: 159
Pomógł: 5
Dołączył: 31.08.2007

Ostrzeżenie: (0%)
-----


a próbowałeś dopisać w zapytaniu tym z match regółki: IN BOOLEAN MODE
?
Go to the top of the page
+Quote Post
Van Pytel
post
Post #3





Grupa: Zarejestrowani
Postów: 150
Pomógł: 6
Dołączył: 3.03.2010

Ostrzeżenie: (0%)
-----


To nic nie daje (IMG:style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
BaN
post
Post #4





Grupa: Zarejestrowani
Postów: 158
Pomógł: 43
Dołączył: 9.11.2007

Ostrzeżenie: (0%)
-----


Cytat(Van Pytel @ 20.10.2010, 16:49:44 ) *
Mnie wydaje sie ze jest problem w rozroznianiem liter tylko nie wiem gdzie tego szukac lub naprawic (IMG:style_emoticons/default/sad.gif)

Kodowanie kolumn mam na latin2_bin
A metoda porównywania napisów na latin2_bin


Prawdopodobnie dobrze Ci się wydaje. Dla wyszukiwania pełnotekstowego możesz zmienić sposób porównywania bezpośrednio w bazie na latin2_general_ci. Ewentualnie problem może być gdy wyszukujesz przy wyszukiwaniu pełnotekstowym słowa nieindeksowane albo słowa krótsze niż 4 znaki, które nie są standardowo indeksowane. Wtedy należałoby zmienić konfigurację MySQLa
Dla wyszukiwania za pomocą LIKE zobacz Case Sensitivity in String Searches
Go to the top of the page
+Quote Post
Van Pytel
post
Post #5





Grupa: Zarejestrowani
Postów: 150
Pomógł: 6
Dołączył: 3.03.2010

Ostrzeżenie: (0%)
-----


Ok zmiana kodowanie w bazie na latin2_general_ci pomogla. Wielkie dzięki za pomoc.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 11:53