Koledzy mam "zgryz" jak podejść do tematu...
Mam tabelę ważeń na serwerze obsługującym wagi w firmie.
Każdy rekord jest unikatowy (Do tabeli dane zrzuca 7 wag przemysłowych) rejestrujących poszczególne ważenia. Średnio około 1,5-2,0 mln rekordów, czas kopiowania tabeli pomiędzy serwerami 60sek (Cała tabela).
Muszę kopiować te dane na drugi serwer i nie za bardzo mam pomysł jak to zrobić aby nie "orać" tabeli źródłowej. Ze względów analityki ważeń kopia musi być co około 10 minut i nie stracić jakiś danych przy kopiowaniu.
Samo wybranie unikatowych nie stanowi problemu jednak jak to zrobić aby nie orać całej bazy rekord po rekordzie wyszukując "nowe".
Ograniczyłem do daty -3 dni... i raz dziennie puszczać bez ograniczenia?
INSERT INTO [dbo].[BIZERBA_packages]
([PLU]
,[Nazwa]
,[Partia]
,[Data]
,[Czas]
,[Waga_Netto]
,[Waga_Etyk]
,[Tps_Etykieta]
,[Tara]
,[Poziom]
,[Nr_Etykiety]
,[Nr_Urzadz]
,[Nazwa_Urzadz]
,[Klient]
,[Error])
SELECT
TZ.[PLU]
,TZ.[Nazwa]
,TZ.[Partia]
,TZ.[Data]
,TZ.[Czas]
,TZ.[Waga_Netto]
,TZ.[Waga_Etyk]
,TZ.[Tps_Etykieta]
,TZ.[Tara]
,TZ.[Poziom]
,TZ.[Nr_Etykiety]
,TZ.[Nr_Urzadz]
,TZ.[Nazwa_Urzadz]
,TZ.[Klient]
,TZ.[Error]
FROM [dbo].[V_BIZERBA_Wazenia] TZ
LEFT JOIN [dbo].[BIZERBA_packages] TD ON TZ.[Nr_Etykiety] = TD.[Nr_Etykiety]
WHERE TD.[Nr_Etykiety] IS NULL
AND TZ.[Data] >= DATEADD(DAY, -3, getdate())



