В таблице предметов есть 30M строк. Я выполняю запрос, чтобы найти дубликат hash
. hash
определяется какПоиск дубликатов столбцов в таблице записей 30M
`hash` varchar(50) NOT NULL;
Этот запрос
SELECT Count(*)
FROM (SELECT Count(id) `num`,
`signature`
FROM `images`
WHERE `hash` IS NOT NULL
GROUP BY `hash`
HAVING `num` > 1) AS `count_table`
занимает около 5-7 минут, прежде чем я нажал Ctrl+C
, чтобы отменить запрос. Я запускаю его снова и все равно не могу дождаться этого много времени.
Как я могу получить этот результат быстрее?
Я знаю, что при выполнении группы это будет немного медленнее. Но8 минут слишком много, я думаю.
У вас есть указатель на 'hash' или ... эээ ..' signature'? –
Пожалуйста, опубликуйте структуру вашей таблицы –