Statystyka z dwóch baz o identycznej strukturze

0

Witam,
mam dwie bazy powiedzmy DANE i ARCHIWUM. Obie mają identyczną strukturę. W DANE przechowuję bieżące dane, a w ARCHIWUM archiwalne. Muszę zrobić statystykę z tych baz (za pomocą GROUP BY) - tzn. ile razy coś tam występowało w zadanym okresie. Czy mogę je jakoś połączyć zamiast przekopiowywać wszystko do trzeciej bazy i tam dopiero uzywać GROUP BY?
Pozdrawiam
Sc0li0sis

2

Jaka baza?
W MS SQL normalnie się łączysz z dwoma bazami i robisz joina między db1.tabela i db2.tabela, w oracle trzeba zrobić dblink

https://www.google.com/search?q=join+two+tables+different+databases

0

Możesz zrobić to za pomocą Linked Server jeśli pracujesz z MSSQL

0

Nie napisałem jaka baza - mój błąd.
Korzystam z mySQL
Sc0li0sis

I jeszcze jeden błąd (ten pech początkującego). Chodziło mi o dwie tabele, a nie bazy. Baza jest ta sama, a w niej dwie tabele DANE i ARCHIWUM.
Przepraszam za zamieszanie :(
Sc0li0sis

0
Sc0li0sis napisał(a):

Witam,
mam dwie bazy powiedzmy DANE i ARCHIWUM. Obie mają identyczną strukturę. W DANE przechowuję bieżące dane, a w ARCHIWUM archiwalne. Muszę zrobić statystykę z tych baz (za pomocą GROUP BY) - tzn. ile razy coś tam występowało w zadanym okresie. Czy mogę je jakoś połączyć zamiast przekopiowywać wszystko do trzeciej bazy i tam dopiero uzywać GROUP BY?
Pozdrawiam
Sc0li0sis

A jeszcze bardziej tą trzecią pozostawić jako produkcyjną.

Bardzo rzadko współcześnie widzę "bazę archiwalną" (może jakieś bieda-hostingi itd). Właściwie niemal wszystkie systemy, wśród jakich się obracam, mają jedną bazę "od stworzenia świata do dziś".
To czasem pokutuje na projektach, których geny (lub geny twórców) są w latach Clippera.

Ta męka wspólnego przetwarzania przeszłości (np poprzedniego miesiąca) razem ze współczesnością jest bardzo charakterystyczna, za tym jest iście peerlowski wysiłek dobudowania prowizorki do prowizorki itd...

Czym innym jest baza totalnie historyczna, tam się inaczej planuje relacje (projektuje się bardziej płąsko niż relacyjne), próbuję sobie przedstawić przed oczy scenariusz: np. obroty każdego ołówka na magazynie do końca poprzedniego miesiąca. Ale podstawowym wyróżnikiem tego jest odmienna struktura, nakierowana na przeszłość, bez możliwości update - ale np z zamrażaniem ówczesnych wartości wpisów

0

no to jak dwie tabele to zwyczajnie możesz zrobić UNION ALL albo po prostu zsumować wyniki

0

Możesz:

select * from nazabazyzdanymi.tabela
union all
select * from nazwabazyzarchiwum.tabela
0

Wielkie dzięki, będę próbował.
Sc0li0sis

0

I o to chodziło, wielkie dzięki za pomoc.
Temat do zamknięcia
Sc0li0sis

1 użytkowników online, w tym zalogowanych: 0, gości: 1