Поиск дублей в базе

12
D
На сайте с 28.06.2008
Offline
1114
#11

В общем сделал не временную таблицу а обычную

CREATE TABLE `t_temp`

потом сделал у нее первичный ключ по ID и только тогда зпрос ну удаление прошел

D
На сайте с 28.06.2008
Offline
1114
#12

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

запросом

SELECT * FROM `xyfq1_items`
WHERE (
fullname
)
IN (
SELECT fullname
FROM `xyfq1_items`
GROUP BY fullname
HAVING COUNT( fullname ) > 1
)
and LENGTH (firstname) > 2
ORDER BY fullname

Я нашел 12068 дублей. Начал дбавлять проверки, чтобы отсеять менее важных из пары.

В итоге дошел до такого запроса

SELECT * FROM `xyfq1_items`
WHERE (
fullname
)
IN
(
SELECT fullname
FROM `xyfq1_items`
GROUP BY fullname
HAVING COUNT( fullname ) > 1
)
and LENGTH (firstname) > 2
and comments = 0
and experience = 0
and LENGTH (photo) < 1
ORDER BY fullname

Он выдал мне 7082 почти половина. Осталось добавить последнию проверку по полю hits - взять из пары ту записать у которой hits меньше.

И вот тут я застрял. Куда бы я не вставлял min (hits) - мускуль ругается на синтаксис.

Помогите плиз дожать запрос?

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий