Доброго времени суток! Помогите новичку. У меня такой скрипт: Код (Text): $sql_count1=mysql_query("Select count(*) FROM client"); $count1=mysql_result($sql_count1,0); echo " <a href="all.php">Всего предложений:</a> <b>$count1</b><br>"; echo "<i> По регионам:<br></i>"; $sql_count2=mysql_query("Select count(*) FROM client WHERE locationID=1"); $count2=mysql_result($sql_count2,0); echo " <a href="gag.php">В Гагаринском районе:</a> <b>$count2</b><br>"; $sql_count3=mysql_query("Select count(*) FROM client WHERE locationID=2"); $count3=mysql_result($sql_count3,0); echo " <a href="vyaz.php">В Вяземском районе:</a> <b>$count3</b><br>"; $sql_count4=mysql_query("Select count(*) FROM client WHERE locationID=3"); $count4=mysql_result($sql_count4,0); echo " <a href="novd.php">В Новодугинском районе:</a> <b>$count4</b><br>"; $sql_count5=mysql_query("Select count(*) FROM client WHERE locationID=4"); $count5=mysql_result($sql_count5,0); echo " <a href="sich.php">В Сычевском районе:</a> <b>$count5</b><br>"; $sql_count6=mysql_query("Select count(*) FROM client WHERE locationID=5"); $count6=mysql_result($sql_count6,0); echo " <a href="tem.php">В Темкинском районе:</a> <b>$count6</b><br>"; $sql_count7=mysql_query("Select count(*) FROM client WHERE locationID=6"); $count7=mysql_result($sql_count7,0); echo " <a href="ugr.php">В Угранском районе:</a> <b>$count7</b><br>"; Есть ли способ оптимизировать? А то у меня еще группируется по другим признакам не только по региону :о)
SELECT COUNT(*) FROM `client` UNION ALL SELECT COUNT(*) FROM `client` WHERE `locationID` = 2 UNION ALL SELECT COUNT(*) FROM `clent` WHERE `locationID` = 2 ..... И через mysql_result выводить нужное значение, указав какое нужно. Пример - echo mysql_result($any,1) Хотя, скорей всего найдется более шустрый вариант запроса. Кстати, мой вариант на случай, если у вас не особо много этих locationID будет всего, иначе лажа) Уж лучше в цикле как по мне тогда.
MiksIr + 1. Хочется заметить также, что если Вам принципиально получение и общего количества и количества по каждому столбцу в один запрос, можно использовать модификатор WITH ROLLUP: [sql] SELECT `locationID`, COUNT(*) AS `count` FROM `client` GROUP BY `locationID` WITH ROLLUP; [/sql]