考慮到表有100列,如果舊值與新值的效率相同,我想阻止更新此方法在執行時會有好處來自我們更新的同一張桌子?任何建議?如果舊列和新列的值對於特定列是相同的,則阻止更新
Update MyTable
SET Col1=CASE WHEN mt.Col1 !=mt.Col1 THEN i.Col1 else mt.Col1,
Col2=CASE WHEN mt.Col2 !=mt.Col2 THEN i.Col2 else mt.Col2,
.
.
Col100 =
FROM MyTable mt JOIN INSERED i ON mt.id=i.id
你們是不是要做到這一點觸發器或存儲過程中? –
是裏面觸發器 –
可能重複的[SQL Server - 插入/插入 - 回滾後](https://stackoverflow.com/questions/13373168/sql-server-after-insert-for-insert-rollback) – TheVillageIdiot