Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: poluceniye iz mysql bazi
Форумы портала PHP.SU » » Объектно-ориентированное программирование » poluceniye iz mysql bazi

Страниц (1): [1]
 

1. KoDeRSmerT - 20 Декабря, 2011 - 14:42:12 - перейти к сообщению
privet. u menya v sql takaya struktura


id
name
time

i e noqo napimer takoye soderjaniye

1 aaaa 12
1 aaaa 18
1 aaaa 68
4 ffff 14
4 ggg 18
9 rrr 5
9 rrr 7

i ya xocu polucit spisok tez id kotoroye iz kajodovo odinakoqoqo id polucat toqo u kotoroqo time bolse. to est polucit takoy spisok

1 aaaa 68
4 ggg 18
9 rrr 7


skajite kakim mysql_query(); kodom mojno polucit takoy spisok.
(Добавление)
nu nikto ne znaet etot prostoy kod ? ))
2. ams - 20 Декабря, 2011 - 15:06:26 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. while($r = mysql_fetch_assoc(mysql_query("select * from `tt`")))
  3. {
  4. $data[$r['name']][] = $r['time'];
  5. }
  6.  


Потом массив получается вида:
aaaa { 2,53, 668 }
ggg {18,125,25 }

И потом находишь макс ф-ей max Улыбка
3. LIME - 20 Декабря, 2011 - 15:10:43 - перейти к сообщению
ams не будет работать
каждый раз будет запрос делать
и получать первую запись
цикл без выхода
4. KoDeRSmerT - 20 Декабря, 2011 - 15:21:13 - перейти к сообщению
nu kto znaet tocniy otvet ? sps vsem )
5. Bio man - 20 Декабря, 2011 - 16:23:02 - перейти к сообщению
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT `id`, `name`, MAX(`time`) AS 'time' FROM `table` GROUP BY `id`
должно работать, по крайне мере у меня работает
6. ams - 20 Декабря, 2011 - 18:14:36 - перейти к сообщению
LIME, специально проверил.

PHP:
скопировать код в буфер обмена
  1.  
  2. $q = mysql_query("SELECT * FROM aaa") or die('a');
  3.  
  4. while($r = mysql_fetch_assoc($q))
  5. {
  6. $data[$r['mane']][] = $r['tiime'];
  7. }
  8.  
  9. echo '<pre>';
  10. print_r($data);
  11.  
  12. foreach($data as $k=>$v)
  13.         echo $k max = " . max($data[$k]) . '<br>';
  14.  


Итог:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. (
  3.     [aa] => Array
  4.         (
  5.             [0] => 123123
  6.             [1] => 3245325
  7.         )
  8.  
  9.     [ss] => Array
  10.         (
  11.             [0] => 235
  12.             [1] => 1243124124
  13.             [2] => 344
  14.         )
  15.  
  16. )
  17. В aa max = 3245325
  18. В ss max = 1243124124
  19.  
7. LIME - 21 Декабря, 2011 - 12:41:28 - перейти к сообщению
ams выше у вас другой код

 

Powered by ExBB FM 1.0 RC1