Всем доброво времени суток, возник такой вопрос по конкретному примеру таблица статистики (ИП, браузеры, Оси):
Код | CREATE TABLE `brows_os` ( `ip` varchar(50) NOT NULL, `brows` varchar(50) NOT NULL, `os` varchar(50) NOT NULL, `date` date NOT NULL default '0000-00-00' ) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
|
и я написал функцию котокая должна отображать разные баузеры и колличество их
Код | function brows_sts(){ $txt = ""; $sql = ""; global $db; //первый запрос выберает уникальные записи браузеров $sql = $db->query("SELECT `brows` FROM `brows_os` GROUP BY `brows` DESC"); if($db->num_rows($sql)>0){ $txt .= ' <table width=100% border=1> <tr> <th width=8%>Браузер</th> <th>Колличество</th> </tr>'; while($res_br = $db->get_array($sql)){ $txt .=' <tr> <td><center>'.$res_br['brows'].'</center></td>'; //второй запрос покажет нам количество уникальных браузеров $sql_count = $db->query("SELECT COUNT( * ) AS `brows` FROM `brows_os` WHERE `brows` = '".$res_br['brows']."'"); $res = $db->get_array($sql_count); $txt .='<td><center>'.$res['brows'].'</center></td></tr>'; } $txt .= "</table>"; } return $txt; } echo brows_sts(); //$db->query -- mysql_query //$db->num_rows -- mysql_num_rows //$db->get_array -- mysql_fetch_array
|
в браузере у мну получается:
Код | Браузер кол-во Opera9.2 2 Opera9.1 1 IE6.0 3 Firefox2.0 1
|
Проблемма в том что, ни как не могу отсортировать их по колличеству в порядке убывания, например вот так:
Код | Браузер кол-во IE6.0 3 Opera9.2 2 Opera9.1 1 Firefox2.0 1
|
Просто не пойму как это сделать, может 2 запроса в 1 совместить? |