Próbuję wstawić wiersze do tabeli "Dane", jeśli jeszcze nie istnieją.SQL INSERT brakujące wiersze z tabeli A do tabeli B
Dla każdego wiersza w Export $, potrzebuję kodu, aby zaznaczyć "Dane" dla wierszy pasujących do okresu (data) i ID (int) - jeśli wiersze jeszcze nie istnieją, powinny zostać utworzone.
Jestem prawie pewna, że moja część "NOT EXISTS" jest zła - jaki jest najlepszy sposób na zrobienie tego? Dzięki za pomoc
IF NOT EXISTS (SELECT * FROM Data, Export$ WHERE Data.ID = Export$.ID AND Data.Period = Export$.Period)
INSERT INTO Data (Period, Performance, ID)
SELECT Period, [Return], [ID] FROM Export$
Na pierwszy rzut oka nie istnieje część swój wygląd ok. Co według ciebie jest z tym nie tak? –
Co jest nie tak, to uniemożliwi wstawianie dowolnych wierszy, jeśli pasują (ewentualnie inne) wiersze (może być ich wiele, aby je zaimportować). – GilM
Oh! Czy próbujesz wstawić "brakujące rekordy" * z * 'Export $'? Jeśli tak, spójrz na "MERGE". Ponadto, ',' między danymi i eksportami znajduje się CROSS JOIN - polecam przeciwko takiej składni. –