Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: 0d 20zl do 50
Forum PHP.pl > Forum > Bazy danych
miki_ok
Witam,
jak najprosciej ulozyc zapytanie, aby wyswietlalo mi np. cene z przedzialu 20 - 50, gdy w tabeli mam pola cena_od i cena_do
i teraz chcialbym wyswietlic wszystkie rekordy ktorym podam np. liczbe 30..
dzieki z gory

pozdrawiam,
MF
kszychu
Ja czegoś nie łapię, wiź no jaśniej: jak masz w tabeli cenba_od i cena_do, po co ci to? Najczęściej spotykamy się z przypadkami, kiedy to w tabeli jest cena a w formularzu wyszukiwania podajesz cena_od i cena_do, i wtedy robi się selecta, po bazie w celu wyłapania artykułów, których cena mieści się w tym przedziale. A ty chcesz podać liczbę i wyłapąc te rekordy, które mają odpowiedni przedział?
Jeśli tak to będzie to takie zapytanie:
[sql:1:5271a95e76]SELECT * FROM tabela WHERE cena_od >= $cena AND cena_do <= $cena[/sql:1:5271a95e76]
scanner
[sql:1:2187bfbb09]SELECT foo FROM bar WHERE _field BETWEEN _min AND _max[/sql:1:2187bfbb09]
kszychu
Scanner: ale on tam coś zamieszał i w bazie ma pola min i max... więc Twój skrypt, jak najbardziej słuszny w normalnych przypadkach, nie zadziała u niego.
miki_ok
chodzi mi oto, ze formularz ma pole 'cena' ktos sobie wpisuje 30 i chcialbym zeby mu wyswietlilo rekordy, w ktorych w jakis sposob jest zdefiniowana cena max i min. pomyslalem, ze najprosciej bylo by zrobic dwa pola dodatkowe cena_od i cena_do czy tam cena_min i cena_max

thx

mam jeszcze jedno pytanie, o ktore juz wczesniej ptalem i nie dostalem odp. sad.gif otoz jak ulozyc zapytanie gdy wyniki wyszukiwania dziele na kolejne podstrony (po 5 rekordow na kazdej) i aby funkcja RAND() nie powtarzala mi juz raz wyrzuconych wynikow przy przechodzeniu na kolejne podstrony... ? :/

mozna czyms zastapic order by RAND ? jest jakas alternatywa?
thx
tiraeth
1.
[sql:1:6249a18d23]SELECT *
FROM tabela
WHERE cena='$cena'
AND cena>=20
AND cena<=50[/sql:1:6249a18d23]

questionmark.gif

2.
Po co RAND ... przecież jak ktoś coś szuka to najlepiej wyświetlać mu wg. np. opisu malejąco ....
[sql:1:6249a18d23]SELECT *
FROM search
WHERE nick LIKE '%$search%'
ORDER BY opis DESC[/sql:1:6249a18d23]
spenalzo
Podział po 5 wyników

strona 1:
[sql:1:56358f5fad]... LIMIT 0,5[/sql:1:56358f5fad]

strona 2:
[sql:1:56358f5fad]... LIMIT 5,5[/sql:1:56358f5fad]

strona 3:
[sql:1:56358f5fad]... LIMIT 10,5[/sql:1:56358f5fad]

itd
sobstel
jak dla mnie cale zalozenie stworzenia 2 pol w tabeli cena_min i cena_max mija sie z celem. w bazdie powinno byc pole cena, w formularzu podawana cena_min i cena_max. twoje rozwiazanie wydaje sie troche... hmm...nielogiczne.
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.