Autor | Zpráva | ||
---|---|---|---|
Execol Profil * |
#1 · Zasláno: 24. 5. 2015, 18:32:36
Ahoj,
už asi 3 hodiny řeším problém, jak jednoduše získat počáteční a konečné datum. Z databáze mi přichází tato tabulka: jmeno prijmeni id_jmeno datum Jan novak 1 2015-05-24 Jan novak 1 2015-05-25 Jan novak 1 2015-05-26 Filip cerny 2 2015-05-26 Filip cerny 2 2015-05-27 .... Tuto tabulku procházím cyklem a snažím se, aby se mi vypsalo jméno a příjmení a datum od a datum do .. tedy nejmenší a nejvyšší datum u daného člověka. Řeším to takto: while($r=mysql_fetch_array($sql)){ if(!isset($lastUserId)){ $start = $r['datum']; }else{ if($lastUserId != $r['id_jmeno']){ $end = $r['datum']; } } //echo $start; if(isset($start) and isset($end)){ echo "OD".$start." DO".$end." ID".$lastUserId."\n"; unset($start); unset($end); unset($lastUserId); }else{ $lastUserId = $r['id_jmeno']; } } Bohužel to ale nefunguje uplně jak má :/ Mohl by mi prosím někdo poradit? Předem moc děkuji. |
||
juriad Profil |
Execol:
A proč nepoložíš do databáze chytřejší dotaz? SELECT jmeno, prijmeni, id_jmeno, MIN(datum) AS od, MAX(datum) AS do FROM tabulka GROUP BY id_jmeno |
||
Execol Profil * |
#3 · Zasláno: 24. 5. 2015, 18:46:41
Neskutečný :))
moc děkuji, budu muset to sql trochu víc nastudovat... |
||
Časová prodleva: 9 let
|
0