SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 03.09.2011 23:12:45

вал
Участник
Зарегистрирован: 28.07.2011
Сообщений: 5

Проблема с подсчетом одинаковых записей

Доброе время суток,

стандартный запрос, подсчет количества повторяюшихся записей:
SELECT upload, COUNT(upload) AS NumOccurrences  FROM dvd GROUP BY upload HAVING NumOccurrences > 1  order by NumOccurrences desc
здесь "upload" имена людей отгрузивших файлы.

На выходе несколько имен повторяются дважды!
Такое впечатление, что они подсчитываются как разные, хотя совершенно одинаковые.
При запуске внутри phpmysql панели, тот же результат - программа упорно видит одинаковые имена как разные - ???

Может быть что то с таблицей(?), кстати, подтверждением этого служит то, что если сортировать по имени, первыми выходят те самые повторяющиеся имена
причем не по алфавиту, за ними алфавитный порядок восстанавливается...

Спасибо за любую помощь.

Вал.

Неактивен

 

#2 03.09.2011 23:58:17

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Проблема с подсчетом одинаковых записей

"африка" и "aфрика" - два разных имени.
Во втором буква а английская (и при сортировке по имени оно окажется раньше "австралии", набранной русскими буквами).

Неактивен

 

#3 04.09.2011 00:17:32

вал
Участник
Зарегистрирован: 28.07.2011
Сообщений: 5

Re: Проблема с подсчетом одинаковых записей

Спасибо за быстрый ответ,

к сожалению, слова появляющиеся в результате запроса действительно одинаковые !
Поиск в браузере например не видит между ними разницы, в отличии от слов приведенных Вами...
Возможно имеются какие то символы которые браузер не различает но различает mysql?

Вал.

Неактивен

 

#4 04.09.2011 00:36:09

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Проблема с подсчетом одинаковых записей

Насколько большая таблица? Можете привести пример данных (mysqldump), чтобы
можно было попробовать это воспроизвести?

Можете попытаться выполнить какой-то тест на одинаковость:
SELECT upload, MD5(upload), COUNT(upload) AS NumOccurrences  FROM dvd GROUP BY upload HAVING NumOccurrences > 1  order by NumOccurrences desc
Если данные действительно одинаковые, то и MD5 у них будет одинаковая (и тогда
это ошибка MySQL, я бы начал с REPAIR TABLE, а потом бы запостил ошибку), а если
MD5 отличается, значит, значения разные (разные буквы, наличие пробелов после
слова, etc.).

Неактивен

 

#5 04.09.2011 08:52:52

вал
Участник
Зарегистрирован: 28.07.2011
Сообщений: 5

Re: Проблема с подсчетом одинаковых записей

Большое спасибо!

Вздохнул - MD5 действительно разные!

Но возникают новые вопросы:

1. Это логины людей зарегистрированных через phpbb - значит ли это что они использовали
какой то хитрый ввод при регистрации или это ошибка в самой phpbb?

2. Как предотвратить / починить?

Вал.

Неактивен

 

#6 04.09.2011 09:39:49

вал
Участник
Зарегистрирован: 28.07.2011
Сообщений: 5

Re: Проблема с подсчетом одинаковых записей

Это просто пробелы в начале имени!

Еще раз, большое спасибо за помощь!

Вал.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson