Autor | Zpráva | ||
---|---|---|---|
VeronikaK Profil * |
#1 · Zasláno: 27. 7. 2011, 19:51:11
Potřebovala bych udělat SQL dotaz, kde potřebuji dát cena OD - DO (to mám snad dobře) a k tomu ještě textově vyjádřenou cenu, což je ta číslovka. Mám to jako 1=dohodou, 2=zdarma apod.
lokalita='94' AND (cena_od < '400' AND cena_do > '400' OR cena_ostatni='0') Příjde mě, že ten dotaz na mySQL mě nefunguje jak má. |
||
VeronikaK Profil * |
#2 · Zasláno: 27. 7. 2011, 19:51:49
Jde mě o to, že musí souhlasit buď cena nebo cena_ostatní .... nebo mohou souhlasit i oboje.
|
||
Dero Profil |
#3 · Zasláno: 27. 7. 2011, 19:58:08 · Upravil/a: Dero
VeronikaK: Pokud máte v tabulce sloupeček cena, pak by měl být typu číslo (použijte např. INT). Stejně tak cena_ostatni může být například číslo, lépe však výčtový typ (ENUM). V takovém případě by dotaz mohl znít:
... lokalita = 94 AND ((cena > 200 AND cena < 600) OR cena_ostatni = 'zdarma') Do dotazu musíte nějak dostat hodnoty spodní a horní hranice. Váš v prvním dotazu navrhovaný způsob zřejmě nedává smysl, více méně jím říkáte, že cena musí být menší než 400 a zároveň větší než 400. Leda byste psala nějaký cenový agregátor či databázi služeb, kde byste u každého výrobku či služby evidovala zároveň i nejnižší a nejvyšší nabízené ceny. |
||
Časová prodleva: 13 let
|
0