Прямо сейчас у меня есть следующий запрос:
SELECT name, COUNT(name), time, price, ip, SUM(price)
FROM tablename
WHERE time >= $yesterday
AND time <$today GROUP BY name
И что я хотел бы сделать, это добавить DISTINCT по столбцу «ip», т.е.
SELECT DISTINCT ip FROM tablename
Таким образом, мой окончательный вывод будет состоять из всех столбцов, из всех строк, где сейчас время, сгруппированных по имени (с количеством имен для каждого повторяющегося имени) и без дублированных IP-адресов.
Как должен выглядеть мой запрос? (или, альтернативно, как я могу добавить отсутствующий фильтр к выводу с помощью php)?
Заранее спасибо.
[ОБНОВЛЕНИЕ]
Чтобы свести к минимуму путаницу, рассмотрим эту (упрощенную) таблицу БД:
| name | ip |
---------------------
| mark | 123 |
| mark | 123 |
| mark | 456 |
| dave | 789 |
| dave | 087 |
Результат, который я ищу, будет выглядеть в виде таблицы HTML:
| name | name count |
----------------------------
| mark | 2 |
| dave | 2 |
То, что я сейчас получаю, это:
| name | name count |
----------------------------
| mark | 3 |
| dave | 2 |
(метка считается 3 раза, хотя два раза с одним и тем же ip).