Περισσότερα
Πώς μπορώ να κάνω UPDATE από ένα SELECT στον SQL Server;
Στον SQL Server, είναι δυνατή η "εισαγωγή" σε έναν πίνακα χρησιμοποιώντας μια δήλωση "SELECT":
INSERT INTO Table (col1, col2, col3)
SELECT col1, col2, col3
FROM other_table
WHERE sql = 'cool'
Είναι επίσης δυνατή η ενημέρωση μέσω μιας SELECT
; Έχω έναν προσωρινό πίνακα που περιέχει τις τιμές και θα ήθελα να ενημερώσω έναν άλλο πίνακα χρησιμοποιώντας αυτές τις τιμές. Ίσως κάτι τέτοιο:
UPDATE Table SET col1, col2
SELECT col1, col2
FROM other_table
WHERE sql = 'cool'
WHERE Table.id = other_table.id
3522
3
Θα τροποποιούσα την εξαιρετική απάντηση του Robin ως εξής:
Χωρίς ρήτρα WHERE, θα επηρεάσετε ακόμη και γραμμές που δεν χρειάζεται να επηρεαστούν, γεγονός που θα μπορούσε (ενδεχομένως) να προκαλέσει επαναϋπολογισμό του δείκτη ή να πυροδοτήσει πυροκροτητές που πραγματικά δεν θα έπρεπε να πυροδοτηθούν.
Ένας τρόπος