Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Jak pominąć rekordy zdublowane.
Husarzyk
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 13.09.2009

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


Witam,
potrzebuje połączyć bazy danych. W jaki sposób pominąć rekordy, które się powtarzają?
W tabeli users o tych samych rekordach username.
Otrzymuje komunikat:
#1062 - Duplicate entry 'przykladowynick' for key 'username'
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
galileox86
post
Post #2





Grupa: Zarejestrowani
Postów: 59
Pomógł: 9
Dołączył: 16.06.2007
Skąd: Bytom

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


Z tego co piszesz a w zasadzie z tego co się domyślam to w tabeli docelowej masz zdefiniowaną unikalność na polu username i ten błąd pojawia Ci się podczas dodawania nowego rekordu do bazy w momencie kiedy istnieje już inny rekord o takiej samej nazwie.

Co możesz zrobić?

- Zdjąć unikalność na kluczu w tablicy docelowej
- Dodać jakiś prefix lub innego rodzaju element do treści która Ci się powatrza tak aby została stworzona nowa wartość może to być np. liczba która ulega inkrementacji czyli, nieunikalny_username_1



Możesz oczywiście jeszcze pobierać z tabeli źródłowej tylko elementy które się nie powatarzają, możesz to uzyskać za pomocą DISTINCT lub GROUP BY oto przykładowe zapytanie, ponieważ nie podajesz struktury to będzie strzał w ciemno.

  1. SELECT DISTINCT username FROM source_user_table;


albo

  1. SELECT username FROM source_user_table GROUP BY username
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: 10.10.2025 - 05:07