Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Prosta wyszukiwarka
user123
post 15.08.2010, 11:47:08
Post #1





Grupa: Zarejestrowani
Postów: 231
Pomógł: 2
Dołączył: 2.08.2006
Skąd: Poznań

Ostrzeżenie: (10%)
X----


Witam,

posiadam małą bazę danych do 2K wpisów i chciałbym wyszukiwać w niej po polach pisarz - varchar(200) oraz tytul - varchar(200), czy mogłbym prosić o jakieś proste przykłady kodu jak można rozwiązać ten problem. Czy będzie do tego dobry system Tsearch2 albo Sphinx czy są do za duże kombajny do tego typu przeszukiwania? Jeśli polecilibyście najzwyklejsze LIKE to w jaki sposób mogę ustawiać trafność wyników?


--------------------
Youtube - Miedzynarodowa wersja: Wyposażenie siłowni
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
IceManSpy
post 15.08.2010, 13:02:40
Post #2





Grupa: Zarejestrowani
Postów: 1 006
Pomógł: 111
Dołączył: 23.07.2010
Skąd: Kraków

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


Zobacz sobie wyszukiwarki pełno tekstowe:
http://ownpage.pl/php/wyszukiwarka-pelnote...-uzyciem-union/


--------------------
Go to the top of the page
+Quote Post
cojack
post 15.08.2010, 14:34:01
Post #3





Grupa: Zarejestrowani
Postów: 898
Pomógł: 80
Dołączył: 31.05.2008

Ostrzeżenie: (20%)
X----


http://www.depesz.com/index.php/2008/04/22...-postgresie-83/

Nic dodać, nic ująć.


--------------------
cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena
Go to the top of the page
+Quote Post
user123
post 16.08.2010, 07:43:49
Post #4





Grupa: Zarejestrowani
Postów: 231
Pomógł: 2
Dołączył: 2.08.2006
Skąd: Poznań

Ostrzeżenie: (10%)
X----


@cojack

a czy mógłbyś powiedzieć mi dlaczego po dodaniu:

  1. cd sjp-ispell-pl-[0-9]*
  2. sort -u -t/ +0f -1 +0 -T /usr/tmp -o polish.med polish.ALL
  3. FOR a IN polish.aff polish.med; do cat $a | iconv -f iso8859-2 -t utf-8 > $a.utf8; done
  4. cp polish.aff.utf8 `pg_config --sharedir`/tsearch_data/polish.affix
  5. cp polish.med.utf8 `pg_config --sharedir`/tsearch_data/polish.dict
  6. touch `pg_config --sharedir`/tsearch_data/polish.stop


  1. CREATE TEXT SEARCH CONFIGURATION public.polish ( COPY = pg_catalog.english );
  2. CREATE TEXT SEARCH DICTIONARY polish_ispell (
  3. TEMPLATE = ispell,
  4. DictFile = polish,
  5. AffFile = polish,
  6. StopWords = polish
  7. );
  8. ALTER TEXT SEARCH CONFIGURATION polish
  9. ALTER MAPPING FOR asciiword, asciihword, hword_asciipart,
  10. word, hword, hword_part
  11. WITH polish_ispell, simple;


  1. CREATE INDEX tsearch_test ON books USING gin(to_tsvector('public.polish', books_title || books_author));


i wywołaniu polecenia
  1. SELECT * FROM test WHERE to_tsvector('public.polish', books_title || books_author) @@ 'Pilch';


otrzymuje w phpPgAdmin wyniki:

Nie znaleziono danych.

a jestem pewien iż w tabelki w polu books_author jest "Pilch", wiesz może co robię źle?

to jak:) posiadacie jeszcze jakieś zjadliwe przykłady:D?


--------------------
Youtube - Miedzynarodowa wersja: Wyposażenie siłowni
Go to the top of the page
+Quote Post
cojack
post 16.08.2010, 11:21:30
Post #5





Grupa: Zarejestrowani
Postów: 898
Pomógł: 80
Dołączył: 31.05.2008

Ostrzeżenie: (20%)
X----


Nie wiem, wrócę do domu to sprawdzę.

@edit
sora ale nie mam czasu, zapier*** dzień i noc.

Ten post edytował cojack 16.08.2010, 23:32:13


--------------------
cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 07:32