Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Usuwanie duplikatów z 1,6mln rekordów
1q2w3e4r
post
Post #1





Grupa: Zarejestrowani
Postów: 238
Pomógł: 0
Dołączył: 6.05.2011

Ostrzeżenie: (10%)
X----


Witam,
Muszę usunąć duplikaty z 1,6mln rekordów.. Zastanawiam się jak to zrobić najszybciej.
Duplikaty mają się usuwać wierszami, czyli duplikaty jeśli jeden wiersz nie może się równać innemu.

Macie jakieś propozycje jak to zrobić?

Proszę o szybka odpowiedź.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
toniq
post
Post #2





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 20.01.2012

Ostrzeżenie: (0%)
-----


wersja z php ma pewna zaletę ze możesz dowolnie filtrować te wyniki


  1. $query = mysql_query('SELECT * FROM tab ORDER BY wiersz DESC');//ważne zęby były posortowane wyniki
  2. $i=0;
  3. while ($row = mysql_fetch_array($query)) {
  4. if ($i > 0)//pomijamy 1 wiersz :)
  5. {
  6. if ($p == $row['wiersz'])//tu dowone sprawdzanie tego wiersza
  7. mysql_query('DELETE FROM tab WHERE id = '.$row['id']);
  8. }
  9. $p = $row['wiersz'];
  10. $i++;
  11. }


i jesli tylko jest index na tym co chcesz sprawdzac to wykonanie tego kodu to kilka sekund (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.10.2025 - 16:54