Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Logika wyszukiwania
Forum PHP.pl > Forum > Przedszkole
Balon
Otóż w projekcie nad którym pracuje, potrzebne było dostosowywanie wg. potrzeb cech produktów - portal ogłoszeniowy.

Postanowiłem, że każda cecha produktu będzie zapisywana jako osobny rekord.

Jednak komplikuje mi to wyszukiwanie takich produktów. Musiałbym w jakiś magiczny sposób łączyć rekordy i dopiero wtedy po nich szukać, ale to by było STRASZNE obciążenie dla serwera.

Proszę, pomóżcie mi winksmiley.jpg
cornholio666
Nie sądze żebyś musiał je łączyć w "magiczny" sposób. I nie sądzę żeby to bylo obciażenie dla serwera. Zastosuj klucz obcy.
Balon
Czytam w sieci i nie mogę zrozumieć. A nie pokazują jakiś prostych przykładów..

Załóżmy że mam 3 tabele

cechy :
id | nazwa
--------------------
1 | cena
2 | producent

detale :
id_produkt | id_cecha | value
-------------------------------------------
1 | 1 | 1000
1 | 2 | Sony
2 | 1 | 6000
2 | 2 | Tesco

products:
id | userid
----------------
1 | 25
2 | 10


W jaki sposób ułożyć zapytanie które będzie szukało produkt którego producent to ma byc Tesco ( LIKE %% ) a cena tez za pomoca ( LIKE %% ) ma wynosic 5000

Nie mogę tego pojąć.

Proszę o mały przykład to już powinienem sie domyslic o co biega winksmiley.jpg

pozdrawiam, dzieki

myslalem ze sie doedukuje a tu jednak to umiem winksmiley.jpg

no i teraz mnie wena naszła to napisałem sobie na szybko takie zapytanie.

no ale to trochę głupie bo zapytanie dot. 2 cech produktu wygląda tak

  1. SELECT i. *
  2. FROM items i, cechy c1, cechy c2, details d1, details d2
  3. WHERE i.id = d1.id AND i.id = d2.id AND d1.id_cecha = c1.id AND d2.id_cecha = c2.id AND d1.value LIKE "%Pol%" AND d2.value LIKE "%Wa%" AND c1.name = "Kraj" AND c2.name = "Miasto"


to co dopiero będzie przy zapytaniu które będzie musiało szukać z 20 cech ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.