Ich versuche, Daten in Tabelle einzufügen, aber wenn es bereits in der Tabelle vorhanden ist, sollte es nicht hinzufügen.
Dies ist der Code, was ich kam, aber es fügt immer noch mehrere Daten mit denselben Werten.
Wie nur einfügen, wenn nicht existiert
insert into nol_art_izm([ART_ID],[DAT])
select distinct
v.id_art, {fn now()}
from
openxml(@hDoc, '/art_kompl/nol_voac') with #vc xd
inner join nol_voac v on xd.id_art = v.id_art
where
not exists(select * from nol_art_izm where nol_art_izm.art_id=xd.id_art)
Ich möchte, dass es keine doppelten "ART_ID" Werte
Fragen scheint mir in Ordnung. Erhalten Sie Duplikate im 'Select distinct' Teil? Meine Version von SQL Server erhält einmal den Wert von now(), aber ich bin mir nicht sicher, dass es immer der Fall ist. –
@Nikola Er fügt doppelte "ART_ID" -Werte in die Tabelle ein – Brezhnews
Sie könnten in diesem Fall eine 'GROUP BY v.id_art' in Erwägung ziehen und eine Aggregatfunktion für' {fn now()} '(zum Beispiel' max') wählen). – GolfWolf