Удаление повторяемых строк

Никола

Новичок
Удаление повторяемых строк

Вот такая ситуёнька:
1. есть таблица MySQL со следующими колонками "timestamp, ip, cookie, php_self, query_string"
2. из этой таблицы нужно записать в массив строки в которых конфигурация "ip, cookie" больше не в одной строчке не повторяется.
Помогите пожалуйста ...
 

kruglov

Новичок
select count()...
group by

-~{}~ 19.03.07 14:48:

или select distinct

-~{}~ 19.03.07 14:48:

ибо вопрос у вас невнятный и может быть понят двояко.
 

Никола

Новичок
kruglov
а где можно прочитать про эти запросы?

-~{}~ 19.03.07 16:51:

kruglov
Ну в этой БД хранится лог посещяемости сайта - под одним ИП может зайти 10 компьютеров, а мне нужно полсчитать пользователей... Вот и повисла задача о извлечения из списка строк в которой ip и cookie больше не в одной строке не повторяются...
 

kruglov

Новичок
Никола
Вот и повисла задача о извлечения из списка строк в которой ip и cookie больше не в одной строке не повторяются...
В переводе на русский это означает: выбрать только такие строки, которые встречаются в самой базе только один раз. Если какие-то строки встречаются более одного раза, то их вообще из базы не извлекать и никому не показывать.

Таким образом из списка
123.123.123.123 xxx
222.222.222.222 yyy
123.123.123.123 xxx
111.111.111.111 zzz
мы получим
222.222.222.222 yyy
111.111.111.111 zzz

Это, очевидно, не является подсчетом пользователей, но является прямым следствием из формулировки вашего вопроса.

Вам нужен select distinct ip, cookie from table

---

почитать можно здесь: http://dev.mysql.com/doc/
 

chira

Новичок
kruglov
Вам нужен select distinct ip, cookie from table
ответ не полный, ему нужен:
Код:
SELECT ip, cookie 
FROM table
GROUP BY  ip, cookie
HAVING COUNT(*) = 1
если всётаки строку 123.123.123.123 xxx нужно увидеть, но только один раз, то без HAVING
 

Никола

Новичок
ну ОГРОМНОЕ ВАМ СПАСИБО, за то что поспособствовали тому, чтобы я нашёл сам ответ на свой вопрос... моё решение таково:

--------Данные------
"192.168.0.1" - "1"
"192.168.0.2" - "1"
"192.168.0.1" - "1"
"192.168.0.1" - "2"
------------------------

а вот строка запроса, которая из всей таблицы выдаёт уникальные строки:

SELECT ip, userBS FROM counter GROUP BY ip, userBS

------Результат------
"192.168.0.1" - "1"
"192.168.0.2" - "1"
"192.168.0.1" - "2"
-------------------------
 
Сверху