mpca
27.11.08,09:23
Čaute,, potrebujem help. Dúfam že sa tu niekto vyzná v SQL.
Ako vytvorím podmienku v selecte ohraničenú zhora aj zdola?
Príklad z praxe potrebujem vybrať dátumy z db od 15.11.2008 do 25.11.2008.
Ako nato? :confused:
ajka5
27.11.08,08:46
ekopo
27.11.08,08:55
takto


SELECT * FROM tabulka WHERE (datum > tvoj_datum) AND (datum < tvoj_datum)

Kde je problem? Skus www.builder.cz
mpca
27.11.08,09:12
ajka5 dakujem krasne za stranku (mas u mna bod ;-))... perfektny web nasiel som to tam,,,

ja som mal SELECT * FROM tabulka WHERE datum >= 15.11.2008 AND datum <= 25.11.2008

spravne je SELECT * FROM tabulka WHERE datum BETWEEN 15.11.2008 AND 25.11.2008
japec
27.11.08,10:13
...
ja som mal SELECT * FROM tabulka WHERE datum >= 15.11.2008 AND datum <= 25.11.2008
spravne je SELECT * FROM tabulka WHERE datum BETWEEN 15.11.2008 AND 25.11.2008

Pole "datum" je v MySQL databaze aky datovy typ? Ked pouzivas dd.mm.rrrr, tak asi char(10). Dava tvoj select dobry vystup? Napr. datum 15.12.2008 ako retazec je medzi 15.11.2008 a 25.11.2008. Kebyze pouzivas typ date (http://dev.mysql.com/doc/refman/5.0/en/datetime.html), potom by mal fungovat aj:

SELECT * FROM tabulka WHERE datum >= '2008-11-15' AND datum <= '2008-11-25'
mpca
27.11.08,10:36
pouzivam "date" nie "char",, zamozrejme ze datumy pisem v tvare
rrrr-mm-dd ale vyhadzuje mi chybu "1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '<= ''' at line 1" a pristup na ftp momentalne nemam aby som opisal presny prikaz.
Už to mám opravené a funkčné.

$sql = "SELECT mnoz FROM zbozi WHERE datum BETWEEN '$od_datum' AND '$do_datum'";

btw: ako prinutit sql aby vedel pouzivat des. ciarku miesto des. bodky?
ekopo
27.11.08,10:46
Je uplne jedno, ci napise prikaz s between alebo tak ako som to napisal ja.
Kedze uz to napisal tak ako ja, tak by som problem videl v tom, ze neboli pouzite zatvorky.......

Co sa tyka tej diskusie o tom, ze aky datovy typ bol pouzity, tak k tomu by som snad podotkol len tolko, ze pouzit iny ako DATE alebo DATETIME je cesta do zahuby a v takom pripade by moja rada bola jedina: Zmenit datovy typ.
V kazdom pripade aj ked sa jedna o DATE alebo DATETIME tak uvodzovky su nutne a zatvorky pri zlozitejsej podmienke nikdy nie su na skodu a nezabudnut na format yyyy-mm-dd .
mpca
27.11.08,10:55
mno pravdepodobne problem boli tie zatvorky,, tie ma vobec nenapadli ale tento zapis sa mi zda lepsi.

Zatial som rozmyslal ze v php-cku po vstupe napr 20,25 premenit na 20.25 a vystup taktiež... len som tam nechcel vkladat zbytocny kod...