Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z porównaniem dwóch tabel (wzorzec i tab aktualizowana)
artvip
post
Post #1





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 15.02.2009

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


Witam,

mam dwie bazy danych. Dane w tabelach powtarzają się jednak nie mają unikalnego ID po którym można kluczem porównywać pojedyncze rekordy. Baza 1 jest wzorcem a Baza 2 jest co 15 min aktualizowana. Muszę porównać bazę 2 do bazy jeden i zobaczyć jakie zmiany zostały poczynione. Przykład:

ID usera nazwa_umie poziom_umie
user 1 11 cos1 1
user 1 11 cos2 1
user 1 11 cos3 0
user 2 22 cos1 2
user 2 22 cos2 1
user 2 22 cos3 0
user 3 33 cos2 0
n n n n

Baza 2 wygląda bardzo podobnie - zmienia się może rekord dla user'aX.

Robiąc:
Select A.id_usera, A.nazwa_umie, A.poziom_umie, B.id_usera, B.nazwa_umie, B.poziom_umie from baza1 A, baza2 B where A.id_usera=B.id_usera and A.poziom_umie = B.poziom_umie and A.poziom_umie = B.poziom_umie and A.id_usera = '11'

Na podst tabeli powyżej zwraca mi wynik w postaci:
1)user1_11 - cos1 - 1
2)user1_11 - cos2 - 1
3)user1_11 - cos3 - 0

ale gdy Baza 2 dostanie aktualizację, że user1 przykład:
ID usera nazwa_umie poziom_umie
user 1 11 cos1 1
user 1 11 cos2 1
user 2 22 cos1 2
user 2 22 cos2 1
user 2 22 cos3 0
user 3 33 cos2 0
n n n n
i porównuję to z baza1 (czyli mój wzorzec) to dostaję wynik:
1)user1_11 - cos1 - 1
2)user1_11 - cos2 - 1

Moje pytanie - jak wyświetlić to dodatkowe pole z bazy1 (czyli mojego wzorca) dla user1 gdy jest we wzorcu bazy1 a nie ma już go w bazie2 - czyli coś takiego:
Baza1: Baza2:
1)user1_11 - cos1 - 1 1)user1_11 - cos1 - 1
2)user1_11 - cos2 - 1 2)user1_11 - cos2 - 1
3)user1_11 - cos3 - 0 3)puste pole

i czy w takiej formie jest to wykonalne?

Mam nadzieję, że jest zrozumiałe to co napisałem. Moja wiedza na temat SQL nie jest duża więc proszę o zrozumienie.

Z góry dziękuję za wszelką pomoc.



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: 26.09.2025 - 00:00