Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Jak z dwóch tabel wyłuskać dane z najmłodszą datą..., ... i mocno ZAWĘZIĆ wynik bez powtórzeń????
Andrzej1002
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 12.03.2010

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


Mam taki problem:

Dwie tabele w bazie danych...

tabela pierwsza "ta":

Ld--NrKlienta--Mieiac--Rok---Wartosc--
-9----22--------5-----2009----18------
-8----15--------5-----2009----15------
-7----21--------5-----2009----11------
-6----22--------5-----2009-----9------
-5----44--------5-----2009-----9------
-4----44--------5-----2009----57------
-3----22--------5-----2009----19------


tabela druga "tb":

-Ld--NrKlienta--Data----------email--
-33-----15-----2009-05-22---aaa9999@o2.pl
-33-----22-----2009-05-18---aaa8888@o2.pl
-33-----21-----2009-05-17---aaa7777@o2.pl
-33-----22-----2009-05-11---aaa6666@o2.pl
-33-----44-----2009-05-05---aaa5555@o2.pl
-33-----22-----2009-05-01---aaa4444@o2.pl
-33-----15-----2009-04-27---aaa3333@o2.pl
-33-----22-----2009-04-22---aaa2222@o2.pl
-33-----22-----2009-04-15---aaa1111@o2.pl

Chciałbym otrzymać TYLKO jeden, NAJŚWIEŻSZY email dla danego klienta czyli wynik z powyższych tabel powinien wyglądać tak

Rezultat:

Klient email
15 -- aaa9999@o2.pl
22 -- aaa8888@o2.pl
21 -- aaa7777@o2.pl
44 -- aaa5555@o2.pl


Próbowałem różnych zapytań ale zawsze dostaję za dużo odpowiedzi czyli albo namnożą mi się Klienci albo wyciąga więcej emaili. Klienci często zmieniają swe eMaile a ważny jest tylko jeden - ten z najświeższą datą...


  1. $wynik = mysql_query ("SELECT DISTINCT ta.NrKlienta, ta.Miesiac, ta.Rok, tb.NrKlienta, tb.email tb.data FROM ta tb WHERE ta.NrKlienta = tb.NrKlienta AND ta.Miesiac = '$month' AND tbRok ='$year' AND tb.email (IMG:style_emoticons/default/questionmark.gif) (IMG:style_emoticons/default/questionmark.gif) (IMG:style_emoticons/default/questionmark.gif) (IMG:style_emoticons/default/questionmark.gif) (IMG:style_emoticons/default/questionmark.gif) ;")


Jeżeli ktoś podpowie mi prosty SELECT to będzie super...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Andrzej1002
post
Post #2





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 12.03.2010

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


może trochę źle zadałem pytanie ale chodzi mi zawężenie klientów tylko do tych których wyciągnąłem z tabeli pierwszej a nie może być wszystkich z tabeli drugiej. czyli tak jakby:

tabela druga "tb":

-Ld--NrKlienta--Data----------email--
-33-----15-----2009-05-22---aaa9999@o2.pl
-32-----22-----2009-05-18---aaa8888@o2.pl
-31-----21-----2009-05-17---aaa7777@o2.pl
-30-----22-----2009-05-11---aaa6666@o2.pl
-29-----44-----2009-05-05---aaa5555@o2.pl
-28-----22-----2009-05-01---aaa4444@o2.pl
-27-----15-----2009-04-27---aaa3333@o2.pl
-26-----22-----2009-04-22---aaa2222@o2.pl
-25-----22-----2009-04-15---aaa1111@o2.pl
-24-----84-----2009-04-15---zzz5555@o2.pl
-23-----92-----2009-04-11---zzz3333@o2.pl
-24-----77-----2009-04-05---zzz4444@o2.pl


a rezultat:

Klient email
15 -- aaa9999@o2.pl
22 -- aaa8888@o2.pl
21 -- aaa7777@o2.pl
44 -- aaa5555@o2.pl

czyli wyeliminowano klientów nr 77, 92 i 84 a klienci nr 15, 21, 22 i 44 mają najświeższe adresy... Czyli jest konieczność dwóch tabel.

Ale dzięki za chęci. Może wpadniesz na pomycl jak wymieszać te dane i wysublimować tylko te j.w.

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 - 15:53