помогите грамотно составить запрос.. голова уже кругом..
Цитата:
id |name
1 | саша
2 | паша
3 | юра
4 | паша
1 | саша
2 | паша
3 | юра
4 | паша
и так далее.. то есть имена могу повторяться...
Необходимо узнать количество повторений каждого из них. Т.е. результат должен быть такой:
Цитата:
Саша - 1
Паша - 2
Юра - 1
Паша - 2
Юра - 1
Пока что у меня получилось вот что:
Код:
$my->sql_query="select DISTINCT name from table order by name";
$my->sql_execute();
while($row=mysql_fetch_object($my->sql_res))
{
$query=mysql_query("select id from table where name like '".$row->name."'");
echo $row->name." - ".mysql_num_rows($query)."<br>";
}
$my->sql_execute();
while($row=mysql_fetch_object($my->sql_res))
{
$query=mysql_query("select id from table where name like '".$row->name."'");
echo $row->name." - ".mysql_num_rows($query)."<br>";
}
Оно то конечно работает, но у меня такое ощущение, что это не совсем правильно. И вдобавок мне нужно распределить места между ними. Т.е. тот у кого больше записей на первом месте в списке, у кого меньше - на последнем. Т.е. конечный результат должен быть таким:
Цитата:
Паша - 2
Саша - 1
Юра - 1
Саша - 1
Юра - 1
group by name;