Привет! Имеется такая вещь: таблица tb_hhh с некоторыми данными, вытаскиваем к примеру первый столбец под названием jjjj. 1) $res=mysql_query("Select jjjj From tb_hhhh"); теперь то что нужно реализовать. Например, существуют некоторые (надо их както задать для начала, а может быть и не надо ))))): А Б С Д Н запросом 1) вытащило например Д,С,Н. Нужно посчитать кол-во вытянутых типа: Д - 3шт С-1шт н-7шт, а А и Б если они отсутствуют присвоить 0 шт. ну както так)) Кто знает как помочь и может реализовать, помогите!! за помощь +1 к карме)))
$res=mysql_query("Select jjjj, count(*) From tb_hhhh group by jjjj"); while($row = mysqli_fetch_array($res)) { echo $row["jjjj"]; echo $row["count(*)"]; } так? а как узнать первый и все последуищие $row["jjjj"];это А, В, Н???
Имеется некий текст записан столбиком: А (<php echo"$row[A]"; ?>) Б (?) С (?) Д (?) Текст не зависим и находится постоянно. Имеется некая база данных. В базу можно записать только А,Б,С,Д (другое не дано). Но при том в базу может быть записаны например 5 строк с текстом "А". А остальное Б,С,Д не встретиться. Необходимо посчитать сколько раз встретился например А. А если Б,С,Д не встречаются присвоить переменным хранящим количестваА,С,Д переменным 0, в противном случае почситать и вывести их количество вместо ?. Я сделал так: $res=mysql_query("Select * From tb_hhhh Where jjjj="A""); $row = mysql_fetch_array($res); $num=array_num_rows($row); и так 5 раз для каждой буквы. Я полагаю есть путь по короче, вот и обратился сюда.
group by. игорь всё верно сказал. вы просто мало себе представляете алгоритм. вернее вообще не представляете. объявите нули. выполните запрос с группировкой. итерируйте в объявленные переменные - ненулевое значение заменит нулевое.
$kol_a=0; $kol_b=0; $kol_c=0; $res=mysql_query("Select jjjj, count(*) From tb_hhhh group by jjjj"); if($res){ while($row = mysql_fetch_array($res)){ $row["count(*)"] - как узнать что это количество скажем букв "А" а ни "С"? \\\\ я так понимаю результатом будет \\\\ к примеру столбец 3, 78, 2 \\\\ как узнать что букв А 78шт и присвоить нужной переменной значение 78? так прокатит ? $row["count(A)"]=$kol_a; ??? } }else{ $kol_a=0; $kol_b=0; $kol_c=0}
$cnt = array('A'=>0, 'B'=>0, 'C'=>0); $res = mysql_query("SELECT `jjj`, COUNT(*) `cnt` FROM `tb_hhhh` GROUP BY `jjj`"); while($row = mysql_fetch_assoc($res)){ $cnt[$row['jjj']]=$row['cnt']; }