Kako UPDATE iz SELECT v strežniku SQL Server?
V strežniku SQL je mogoče vstaviti
v tabelo z uporabo stavka SELECT
:
INSERT INTO Table (col1, col2, col3)
SELECT col1, col2, col3
FROM other_table
WHERE sql = 'cool'
Ali je mogoče z ukazom SELECT
tudi posodobiti? Imam začasno tabelo, ki vsebuje vrednosti, in želim posodobiti drugo tabelo z uporabo teh vrednosti. Morda nekaj takega:
UPDATE Table SET col1, col2
SELECT col1, col2
FROM other_table
WHERE sql = 'cool'
WHERE Table.id = other_table.id
3522
3
Odličen odgovor Robin'a bi spremenil v naslednje:
Brez klavzule WHERE boste vplivali tudi na vrstice, na katere ni treba vplivati, kar lahko (morda) povzroči preračunavanje indeksov ali sproži sprožilce, ki se v resnici ne bi smeli sprožiti.
V eno smer