Dakle imam dve tabele sa istom strukturom i istom kolicinom podataka (isti broj redova).
U pitanju su DELETED i INSERTED tabele.
Prva sadrzi stare podatke a druga nove podatke.
Zbog toga sto su moguce izmene i u kljucu, jedina veza izmedju ovih tabela je red podatka (prvi red iz DELETED je u vezi sa prvim redom INSERTED).
Da li je moguce koriscenjem samo jedne SELECT naredbe spojiti ove dve tabele u novu koja ce imati isti broj redova kao i pocetne ali tako da svaki njen red sadrzi podatke iz jedne i druge tabele ?
Da demonstriram primerom sta hocu:
tabela INSERTED tabela DELETED
SIFRA KOLICINA SIFRA KOLICINA
----------- ---------- ----------- ----------
1 1.00 5 11.00
2 7.00 6 15.00
3 9.00 7 23.00
hocu da dobijem ovakvu tabelu (izlaz)
I_SIFRA I_KOLICINA D_SIFRA D_KOLICINA
----------- ---------- ----------- ----------
1 1.00 5 11.00
2 7.00 6 15.00
3 9.00 7 23.00
Ja imam neko resenje koriscenjem privremenih tabela ali me bas zanima da li je moguce jednostavnije. Evo i mog resenja:
SELECT IDENTITY(int,1,1) AS SID, * INTO #INS FROM INSERTED
SELECT IDENTITY(int,1,1) AS SID, * INTO #DEL FROM DELETED
SELECT I.SIFRA AS I_SIFRA, I.KOLICINA AS I_KOLICINA,
D.SIFRA AS D_SIFRA, D.KOLICINA AS D_KOLICINA
FROM #DEL D INNER JOIN #INS I ON D.SID = I.SID