Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]PHP & MYSQL Jak znależć zdublowane rekordy w danej kolumnie
poli25
post
Post #1





Grupa: Zarejestrowani
Postów: 239
Pomógł: 20
Dołączył: 19.02.2010

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


  1. Witam mam problem ze znalezieniem zdublowanych wartości w kolumnie.
  2. Mam utworzoną tabelę przelewy w których kilka osób wpisuje przelewy. Czasem zdarzy się że przelewy się zdublują jak utworzyć zestawienie w phpie aby pokazało mi id kontrahenta i tresci tylko zdublowanych przelewów? Tabela przelewy ma odpowiednio pola: id, id_kontrahenta, tresc, kwota.
  3.  
  4. Zrzut z bazy danych:
  5.  
  6. ID ID_KONTRAHENTA TREŚĆ KWOTA
  7. 1 1 PRZEL.ZA F NR 1 150.15
  8. 2 1 PRZEL. ZA F NR 2 500.10
  9. 3 1 PRZEL.ZA F NR 4 1500.85
  10. 4 1 PRZEL.ZA F NR 5 150.50
  11. 5 1 PRZEL.ZA F NR 1 150.15
  12. 6 2 PRZEL.ZA F NR 859 500.89
  13. 7 2 PRZEL.ZA F NR 988 800.80
  14. 8 2 PRZEL.ZA F NR 9599 800.80
  15. 9 3 PRZEL.ZA F NR 333 950.13
  16. 10 3 PRZEL.ZA F NR 44 4 100.00
  17.  
  18. i chciałbym by php wygenerował mi takie zestawienie:
  19.  
  20. ID KONTRAHENTA
  21. 1
  22. TRESC KWOTA
  23. PRZEL.ZA F NR 1 150.15
  24. PRZEL.ZA F NR 158 150.15
  25. 2
  26. TRESC KWOTA
  27. PRZEL.ZA F NR 988 800.80
  28. PRZEL.ZA F NR 9599 800.80
  29.  
  30. Próbowałem coś zrobić ale mi nie wychodzi. nie wiem jak przekazac z pętli wartości do podpętli. Gdyby to mi sie udało to chyba znalazłbym odpowiedz.
  31.  
  32.  
  33. Chodzi mi tylko zeby wyszukiwało po kwocie, bo czesto jest tak że wartości są te same ale przelewy są na różne dokumenty - to wtedy jest poprawnie. Jeśli jednak zobacze zdublowane wartośvci to treści już sam sobie sprawdze ;).
  34. Z gory dziękuję za pomoc i podowiedzi. Pozdrawiam


Ten post edytował poli25 23.08.2010, 12:47:56
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
askone
post
Post #2





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Skoro tak to moja propozycja wygląda tak:
  • pobierasz dane z bazy normalnie - pełen zestaw kolumn
  • po stronie php tworzysz array()
  • jako klucz w tej tablicy proponuje taki ciąg tekstowy [IdKontrahenta]_[kwotaZłote]_[kwotaGrosze] - łącznik to znak "_", Kwotę przelewu należy skonwertować do postaci w której zamiast kropki (lub przecinka) będzie także "_"
  • Dla każdego klucza głównego tworzymy array() i tam wstawiamy po kolei ewentualne zdublowane rekordy


Przykład
Mając tablicę z rekordami jakie podałeś jako przykład otrzymasz:
Kod
[1_150_15][] rekord 1
[1_500_10][] rekord 2
[1_1500_85][] rekord 3
[1_150_50][] rekord 4
[1_150_15][] rekord 5
[2_500_89][] rekord 6
[2_800_80][] rekord 7
[2_800_80][] rekord 8
[3_950_13][] rekord 9
[3_100_00][] rekord 10


Powyższy przykład ukazuje, iż zdublowane wpisy będą dla klucza [1_150_15] i [2_800_80]. Po zbudowaniu takiej tablicy wystarczy już sobie foreach'em wyświetlić wszystkie elementy - lub zrobić var_dump (IMG:style_emoticons/default/winksmiley.jpg)

Pozdrawiam
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: 4.10.2025 - 15:00