SQL Server如何为临时表所有行批量设置同一列值?
SQL Server临时表批量设置新增列值
方案1:新增列时直接设置默认值(一步到位)
如果你还没给临时表#t添加status列,可以在新增列的同时指定默认值,这样现有75条数据会自动填充为'A',后续新插入的行也会默认使用这个值(若不需要默认值,后续可移除):
ALTER TABLE #t ADD status VARCHAR(1) NOT NULL DEFAULT 'A';
VARCHAR(1)可根据实际需求调整长度,NOT NULL确保列不允许为空,搭配DEFAULT 'A'会自动给所有现有行赋值'A'。
方案2:已新增列后批量更新
如果已经完成status列的添加(此时列值可能为NULL),直接执行UPDATE语句批量设置所有行的status为'A':
UPDATE #t SET status = 'A';
- 这条语句会一次性修改
#t表中所有行的status列值,无需逐行操作。
验证结果
执行完上述操作后,可通过以下查询确认效果:
SELECT ID, status FROM #t;
返回结果会符合你的预期:
| ID | Status |
|---|---|
| 24 | A |
...(其余74条数据的status均为'A')
内容的提问来源于stack exchange,提问作者sleepypitty
相关产品推荐
相关产品推荐

