Wenn ich das in SQL ServerSQL Server Update wo Spalte in (doppelte Werte) - wie viele Updates?
update table
set column = @value
where id in (1,2,2)
wie viele Aktualisierungen durchführen wird? 2 oder 3, wo zwei Updates in Zeile mit id = 2?
Wenn ich das in SQL ServerSQL Server Update wo Spalte in (doppelte Werte) - wie viele Updates?
update table
set column = @value
where id in (1,2,2)
wie viele Aktualisierungen durchführen wird? 2 oder 3, wo zwei Updates in Zeile mit id = 2?
declare @table table (id int, num int)
insert into @table values (1,1),(2,1)
update @table
set num = num + 1
where id in (1,2,2)
select * from @table
Ergebnis ist:
id num
1 2
2 2
So Update einmal auf jedem eindeutigen Wert von Satz durchführen wird.
Testen Sie Ihren Code mit einer Auswahl. und Sie werden sehen, wie viele Zeilen aktualisiert werden.
für die Zählung
select count(*) from table
where id in (1,2,2)
die Zeilen sehen aktualisiert
select * from table
where id in (1,2,2)
wenn id ein primairy Schlüssel (und die einzige, 2 Zeilen)
ist Warum testet es nicht einfach? – Eiko
Wie kann ich es tun? –
Ok, ich habe es, es ist einfach ... –