Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Łączone zapytanie mysql dla szukania fraz i słów
www.aukcje.fm
post 19.12.2012, 20:53:57
Post #1





Grupa: Zarejestrowani
Postów: 173
Pomógł: 1
Dołączył: 4.05.2010

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


Witam,

Temat : połączenie 4 zapytań w jedno

Szukamy na potrzeby systemu wyszukiwarki dla dalszej obróbki zapytań i wyników pewnym zapytaniem sql dla full text, lecz nie zdaje ono dobrych rezultatów.

Zadanie : budowa jednego zapytania w pliku php (nawet przy wykorzystaniu tabeli tmp) bez względów na długość trwania zapytania.

Odpowiedź : może być inne zapytanie ale generalnie aby ustawiało najpierw frazy "te w cudzysłowu" potem te +występujące +razem, potem te ze zwykłego match against ('nasza fraza') a potem te z systemu querty expantion (czyli dobierane z podwójnego wyszukiwania). Więc z połączenia 4 zapytań a każde (jeżeli to możliwe) z ilością występowania.

Czyli chcemy połączyć cztery wyszukiwania numerów ID w jedno z pogrupowanymi wynikami bez powtarzania ID

1)
  1. SELECT * FROM `tabela` WHERE `tekst` LIKE '%nasza fraza%'


2)
  1. SELECT id
  2. FROM `tabela`
  3. WHERE MATCH `tekst`
  4. AGAINST ('+nasza +fraza' IN BOOLEAN MODE )


3)
  1. SELECT id
  2. FROM `tabela`
  3. WHERE MATCH `tekst`
  4. AGAINST ('nasza fraza')


4)
  1. SELECT id
  2. FROM `tabela`
  3. WHERE MATCH `tekst`
  4. AGAINST ('nasza fraza' WITH QUERY EXPANSION )



hmm czy ktoś mnie zrozumie :|
Go to the top of the page
+Quote Post

Posty w temacie


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: 31.07.2025 - 10:37