Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> выбрать все дубликаты по полю 
:(
    Опции темы
sanich_
Дата 26.11.2010, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 2.3.2008

Репутация: нет
Всего: нет



Есть таблица с объявлениями, очень много дубликатов по полю description
у каждого объявления есть дата добавления.

Нужно выбрать и удалить все дубликаты кроме самого свежего объявления.

Таблица object в ней поля id, description, date_

вот кое что нашел:

Код

SELECT id, description, COUNT(description) AS cnt, date_ as date_add
FROM object GROUP BY description
HAVING (COUNT(cnt)>1)
order by cnt desc


Этот запрос показывает все дублирующие по одному записи по полю description

но мне надо все id записей всех дубликатов, кроме той у которой самая свежая дата

Не волоку в sql помогите составить запрос

Это сообщение отредактировал(а) sanich_ - 26.11.2010, 12:44
PM MAIL   Вверх
CruorVult
Дата 26.11.2010, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 1
Всего: 28



Код

SELECT id 
FROM `object` AS o
WHERE o.date_<> 
(
SELECT MAX(o1.date_)
FROM `object` AS o1
WHERE o1.description = o.description
)


PM MAIL Skype   Вверх
sanich_
Дата 29.11.2010, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 2.3.2008

Репутация: нет
Всего: нет



Цитата(CruorVult @ 26.11.2010,  14:24)
Код

SELECT id 
FROM `object` AS o
WHERE o.date_<> 
(
SELECT MAX(o1.date_)
FROM `object` AS o1
WHERE o1.description = o.description
)


зацикленный запрос, он просто вешает mysql
PM MAIL   Вверх
CruorVult
Дата 29.11.2010, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 1
Всего: 28



Он не зацикленный а сложный, по-этому накружает серв. делайте по частям, либо ждите. 
Поля с датой и description индексированные?
PM MAIL Skype   Вверх
sanich_
Дата 29.11.2010, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 2.3.2008

Репутация: нет
Всего: нет



Цитата(CruorVult @ 29.11.2010,  14:57)
Он не зацикленный а сложный, по-этому накружает серв. делайте по частям, либо ждите. 
Поля с датой и description индексированные?

оба поля индексированные, на локальной машине ждал 6 минут, так и не дождался, при том что записей всего то 34111, и это в 3 раза меньше, чем на хостинге.

Другой вариант запроса можете предложить?
PM MAIL   Вверх
CruorVult
Дата 29.11.2010, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 1
Всего: 28



Запрос по-легче - врятли. Можно вытянуть одним запросом все данные а потом уже php-скриптом обработать и удалить.
PM MAIL Skype   Вверх
sanich_
Дата 29.11.2010, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 2.3.2008

Репутация: нет
Всего: нет



Цитата(CruorVult @ 29.11.2010,  15:19)
Запрос по-легче - врятли. Можно вытянуть одним запросом все данные а потом уже php-скриптом обработать и удалить.

Понятно, спасибо и на этом
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0688 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.