Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Usunięcie zduplikowanych rekordów w kilku kolumnach
brzanek
post
Post #1





Grupa: Zarejestrowani
Postów: 429
Pomógł: 0
Dołączył: 8.11.2012

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


Witam mam problem z usunięciem zduplikowanych rekordów.
Dane powtarzają się w kilku kolumnach.
Tak to wygląda w bazie
(IMG:https://i.postimg.cc/J0vsMh76/moja.png)

Robię to na tej zasadzie
  1. DELETE
  2. FROM
  3. `opad_miesieczny_wojewodztwo_new`
  4. WHERE
  5. `id` IN(
  6. SELECT
  7. *
  8. FROM
  9. (
  10. SELECT
  11. MIN(`id`)
  12. FROM
  13. `opad_miesieczny_wojewodztwo_new`
  14. GROUP BY
  15. `rok`,
  16. `miesiac`
  17. HAVING
  18. COUNT(`id`) > 1
  19. ) temp
  20. )


Podobnie jak tu
(IMG:https://i.postimg.cc/vTc4Jnyx/hZggq.png)

Dlaczego to zapytanie nie usuwa tych duplikatów?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
trueblue
post
Post #2





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


https://kawalekkodu.pl/zly-brat-blizniak-cz...likatow-w-mysql
Zrób wcześniej backup.
Go to the top of the page
+Quote Post
brzanek
post
Post #3





Grupa: Zarejestrowani
Postów: 429
Pomógł: 0
Dołączył: 8.11.2012

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


Zastosowałem coś takiego
  1. DELETE FROM `opad_miesieczny_wojewodztwo_new` AS 't1', `opad_miesieczny_wojewodztwo_new` AS 't2'
  2. WHERE 't1'.`id`>'t2'.`id` AND 't1'.`rok`='t2'.`rok` AND 't1'.`miesiac`='t2'.`miesiac` AND `miasto` = 'CHOSZCZNO'

Pojawił się błąd
MySQL zwrócił komunikat: Dokumentacja
#1064 - Something is wrong in your syntax obok 'AS 't1', `opad_miesieczny_wojewodztwo_new` AS 't2'
WHERE 't1'.`id`>'t2'.`id` AN' w linii 1
Go to the top of the page
+Quote Post
trueblue
post
Post #4





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Wyraźnie jest napisane gdzie jest błąd.
Czy nazwy aliasów obejmuje się cudzyłoswami?

Niedługo będziesz monitorował swoim skryptem pogodę w kosmosie, a uparcie nie chcesz nauczyć się podstaw.
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Niedługo będziesz monitorował swoim skryptem pogodę w kosmosie, a uparcie nie chcesz nauczyć się podstaw.
Ah, jakby tylko forum umozliwilo lajkowac posty (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
brzanek
post
Post #6





Grupa: Zarejestrowani
Postów: 429
Pomógł: 0
Dołączył: 8.11.2012

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


Cytat(nospor @ 27.02.2020, 12:41:11 ) *
Ah, jakby tylko forum umozliwilo lajkowac posty (IMG:style_emoticons/default/wink.gif)

Ah jakby każdy odpowiadał na temat a nie nabijał sobie liczbę postów to by było fajnie (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Ah, jakby kazdy po tylu latach na forum ogarnial juz podstawy... (IMG:style_emoticons/default/tongue.gif)

Jesli zas przytyk o postach byl do mnie to nie wiem o co chodzi. trueblue podal wszystko nie zostawiajac dla mnie juz nic (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Tomplus
post
Post #8





Grupa: Zarejestrowani
Postów: 1 879
Pomógł: 230
Dołączył: 20.03.2005
Skąd: Będzin

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


@Brzanek
Nie bądź zły. Takie błędy zdarzają się nawet najlepszym, tylko najlepsi nie pytają się na forum gdzie jest błąd, a czytają to co im wyrzuca parser w logach. Więc dołącz do najlepszych (IMG:style_emoticons/default/smile.gif)

Go to the top of the page
+Quote Post
brzanek
post
Post #9





Grupa: Zarejestrowani
Postów: 429
Pomógł: 0
Dołączył: 8.11.2012

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


Zrobiłem to tak
  1. include('bd.php');
  2. $result = $mysqli->query("
  3. DELETE FROM opad_miesieczny_wojewodztwo_new AS t1, opad_miesieczny_wojewodztwo_new AS t2
  4. WHERE t1.id>t2.id AND t1.rok=t2.rok AND t1.miesiac=t2.miesiac AND miasto = CHOSZCZNO AND rok = 2018
  5. ");

Niestety powtarzane rekordy z tego roku nadal są w bazie i nic nie wywaliło.
(IMG:https://i.postimg.cc/sxxHZKpH/tempsnip.png)
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Bo twoje zapytanie generuje blad bazy danych. No juz naprawde moglbys takie rzeczy jak sprawdzanie czy zapytanie sie powiodlo i jak sie nie powiodlo to wyswietlac jaki konkretnie blad sie wygenerowal, ogarniac sam, a nie ze my ci mamy poprawiac kazdy banalny blad w zapytaniu jaki robisz
Go to the top of the page
+Quote Post

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: 24.08.2025 - 04:57