Autor | Zpráva | ||
---|---|---|---|
Zelda Profil |
#1 · Zasláno: 7. 4. 2006, 11:16:50
Přátelé, jakým způsobem vyberu z databáze podle více kritérií?
Např. seznam žáků, a já chci všechny Petry, kterým je více než 20 let. mysql_query (select zak from zaci where ... eee? nevím :o/) |
||
krteczek Profil |
#2 · Zasláno: 7. 4. 2006, 12:02:14 · Upravil/a: krteczek
$dotaz="select zak from tabulka where (jmeno='petr') and (vek>20) (and ...dalsi podminky) order by prijmeni asc (...nebo desc)";
vyber zaky kteri maji jmeno petr, a zároveň jim je více než 20let a vysledek seřad podle jeijch prijmeni vzestupně (a-z) v zavorce je sestupně od z-a krteczek |
||
24k Profil * |
#3 · Zasláno: 7. 4. 2006, 12:07:50
Ono zalezi co sis do te databaze ukladal. Pokud napriklad datum narozeni tak to pujde snadno funkci SUBDATE kde odectes NOW() od sloupce data narozeni a musi to byt vetsi nez 20 year ;)
vice mysql manual a taky si projdi mm.gene.cz |
||
Časová prodleva: 26 dní
|
|||
Milos Profil |
#4 · Zasláno: 3. 5. 2006, 22:08:52
Dobrý den,
mám odbobný dotaz vybýrám z databáze pomocí $vysledek=mysql_query("select * FROM tabulka where (podminka1 = 'podminka1' and podminka2 = 'podminka2' and podminka3 = 'podminka3') "); a problém mám tom, co když zadám jen dva parametry do podminka3='cokoliv' a nevím který znak zastupuje "rovno čemukoli". Zkoušel sem prázdnou hodnotu tj. '' ale to nefunguje. Prosím o radu, jediné co mě napadá, je přes if to zjišťovat před samotným spuštěním dotazu a pokud není např. podmínka3 zadána tak ji vůbec do dotazu nezahrnu - ale přijde mi to docela pracné, hlavně pokud je podmínek třeba šest!!! Díky za každou radu. |
||
24k Profil * |
#5 · Zasláno: 3. 5. 2006, 23:46:14
Neni to pracne ne ?
if ($podminka1=="cosi) $dodatek.="AND podminka1='podminka1'"; if ... atd.. imho normalni |
||
Milos Profil |
#6 · Zasláno: 4. 5. 2006, 16:57:26
hmmm, zajimavé,
já to nakonec vyřešil tak, že při výběru neporovnávám hodnoty, ale použil jsem podminka1 like 'podminka1' a pokud není podminka1 zadaná, tak se tam vloží $podminka='%' což vybere všechno v dané podmínce... zatím mi to funguje - víte li někdo důvod proč to nepoužívat - dejte vědět :) |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0