Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 230 Pomógł: 3 Dołączył: 8.01.2008 Ostrzeżenie: (10%)
|
Przez przypadek dodałem sporo danych 2x, tak że mam duplikat każdego. Jak mogę łatwo te duplikaty usunąć? Jest ich kilkaset, więc ręcznie nie bardzo :-)
Na innym forum znalazłem coś takiego:
(http://www.forum.webdiary.pl/ftopic6506.html) Ale czy to czasem nie usunie wszystkich rekordów? Tj. duplikat i oryginał? Zrobiłem to z poziomu php - pobrałem wszystkie mecze, nastepnie sprawdzałem dla każdego meczu czy wystepuje duplikat - jeżeli występuje, usuwam aktualny (duplikaty sprawdzam dla każdego na bierząco, więc jeżeli usune duplikat, dochodząc do drugiego meczu już duplikatu nie wykryje, więc go nie usunie). |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 1 Dołączył: 19.08.2008 Skąd: Warszawa Ostrzeżenie: (0%)
|
hmmm - wydaje mi się, że najprościej będzie dopisanie magicznego słówka "distinct" w kwerendzie i po sprawie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) (SELECT DISTINCT FROM i tak dalej )
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 123 Pomógł: 0 Dołączył: 24.10.2004 Skąd: TG Ostrzeżenie: (0%)
|
było już wiele razy...
1 linia/polecenie tworzy tymczasową tabelę o nazwie tmp, do której trafia niezduplikowana zawartość naszej tabeli z duplikatami. Duplikaty eliminuje polecenie DISTINCT. 2 linia czyści zawartość tabeli, która przechowuje duplikaty. 3 linia wstawia do wyczyszczonej tabeli z byłymi duplikatami zawartość tabeli tymczasowej, gdzie duplikatów już nie ma. 4 linia usuwa tabelę tymczasową. Gotowe! Ten post edytował Fixer 7.03.2009, 21:09:29 |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 230 Pomógł: 3 Dołączył: 8.01.2008 Ostrzeżenie: (10%)
|
Fajny sposób, dzięki! :-)
|
|
|
|
![]() ![]() |
|
Aktualny czas: 23.12.2025 - 20:38 |